利用Marshal来管理非托管资源
2024-10-08 09:46:27
void MarshalChartDemo() { string name = "xuwei"; IntPtr pName = Marshal.AllocHGlobal(name.Length); Marshal.Copy(name.ToCharArray(), 0, pName, name.Length); char[] cName = new char[name.Length]; Marshal.Copy(pName, cName, 0, name.Length); } void MarshalByteDemo() { string name = "xuwei"; var nameBytes = Encoding.Default.GetBytes(name); IntPtr pName = Marshal.AllocHGlobal(nameBytes.Length); Marshal.Copy(nameBytes, 0, pName, name.Length); byte[] cName = new byte[nameBytes.Length]; Marshal.Copy(pName, cName, 0, nameBytes.Length); string temp = Encoding.Default.GetString(cName); }
最新文章
- 上传图片预览JS脚本 Input file图片预览的实现示例
- JDK动态代理与CGLib动态代理
- webpack学习之入门实例
- html5.js
- SGU 220.Little Bishops(DP)
- 复习篇(一)Activity的生命周期和启动模式
- css3 动画(animation)-简单入门
- discuz_style_default.xml修改
- 设计模式 - 适配器模式(adapter pattern) 具体解释
- c#基础练习之if结构
- 通俗易懂的信息熵与信息增益(IE, Information Entropy; IG, Information Gain)
- Jmeter_针对响应信息不明确的接口做关联
- Goroutine通信与thread in java间的通信
- vue-cli 项目里屏幕自适应
- Spring众多jar包的特点,及Spring jar包官网下载方法
- SubLime Text 3 配置SublimeREPL来交互式调试程序
- Spark记录-Scala多线程
- JVM JRE JDK三者的区别和联系
- Sum It Up---poj1564(dfs)
- iOS NSRunloop的简单理解
热门文章
- open xml 导出excel遇到的问题
- JavaSE学习笔记(12)---线程
- ROS 环境变量配置
- gdck01
- JS宣传页项目-综合实战
- 在Docker中部署Confluence和jira-software
- LeetCode 852. 山脉数组的峰顶索引 (二分)
- 如何在 messager/alert/confirm等消息提示框中 获取 / 设置 嵌入 html内容中的 input[type=checkbox]等的选中状态?
- [51nod 1181] 质数中的质数 - 筛法
- 1、微服务--为什么有consul,consul注册,心跳检测,服务发现