`

[C#]I/O完成端口的实现

 
阅读更多
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>
VC++中我几乎每一个Windows Service都是采用I/O完成端口。至于在C#中如何使用I/O完成端口,一直很少见人提及。 William Kennedy的三篇文章《IOCP Thread Pooling in C#》,对实现这种机制很有帮助,唯一美中不足的是,它只能把int数值压入完成端口,而无法像VC++中那样可以将接口指针/BSTR字符串等等转为OVERLAPPED*。我试了很多遍Marshal.PtrToStructure/StructureToPtr 和StringToBSTR,总是无法成功通过I/O完成端口传递string。


分享到:
评论

相关推荐

    C# 完成端口 IOCP

    C# 完成端口 IOCP 输入输出完成端口(Input/Output Completion Port,IOCP), 是支持多个同时发生的异步I/O操作的应用程序编程接口。

    c# socket 完成端口实例

    这些增强功能的主要功能是可以避免重复分配的和在大量异步套接字 I/O 内进行同步的对象。 当前实现的 Begin/End 设计模式 System.Net.Sockets.Socket 类需要 System.IAsyncResult 对于每个异步套接字操作分配对象。 ...

    托管I / O完成端口(IOCP)-第2部分

    适用于托管IOCP的无锁对象池,无锁队列和线程池。

    带有Thread.BindHandle的异步I / O

    描述通过.NET使用带有I / O完成端口的异步I / O

    怎样查找打开的端口和如何关闭端口

    计算机“端口”是英文port的义译,可以认为是计算机与外界通讯交流的出口。其中硬件领域的端口又称接口,如:usb端口、串行端口...软件领域的端口是一种抽象的软件结构,包括一些数据结构和i/o(基本输入输出)缓冲区。

    c#串口通信的代码

    c#串口通信的源代码,C# 编程,其中的 SerialPort 控件类可用来控制串行端口文件资源,它属于命名空间 System.IO.Ports,它提供了同步 I/O 和事件驱动的 I/O、对管脚和中断状态的访问以及对串行驱动程序属性的访问。

    Visual C#.NET串口通信及测控应用典型实例.(电子工业.李江全.邓红涛.刘巧.李伟).part3

    通过8个典型应用实例,包括PC与PC、PC与单片机、PC与PLC、PC与远程I/O模块、PC与智能仪器、PC与无线数传模块、Pc与USB数据采集模块等组成的测控系统,利用SerialPort控件和MSComm控件编写C#.NET串口通信程序,...

    Visual C#.NET串口通信及测控应用典型实例.(电子工业.李江全.邓红涛.刘巧.李伟).part1

    通过8个典型应用实例,包括PC与PC、PC与单片机、PC与PLC、PC与远程I/O模块、PC与智能仪器、PC与无线数传模块、Pc与USB数据采集模块等组成的测控系统,利用SerialPort控件和MSComm控件编写C#.NET串口通信程序,...

    Visual.C#.编程精彩百例

    实例2 C#的简单输入输出(I/O) 实例3 C#的复杂输入输出(I/O) 实例4 通信录管理与维护 实例5 文件与目录管理 实例6 用户界面上的“Hello,World!” 实例7 组件化“Welcome”程序 实例8 网络上的“Hello ...

    Visual C#.NET串口通信及测控应用典型实例.(电子工业.李江全.邓红涛.刘巧.李伟).part2

    通过8个典型应用实例,包括PC与PC、PC与单片机、PC与PLC、PC与远程I/O模块、PC与智能仪器、PC与无线数传模块、Pc与USB数据采集模块等组成的测控系统,利用SerialPort控件和MSComm控件编写C#.NET串口通信程序,...

    WinIO3.0库(Win32)

    WinIo库允许32位和64位Windows应用程序直接访问I/O端口和物理内存。 3.0版本提供了以下特性: 支持32位和64位平台(不包括Itanium)。 WinIo现在可以被多个应用程序同时使用。 新的c#样本。 这个版本中的Bug修复: 修正...

    基于 WMI(Windows Management Instrumentation)的 BIOS 接口设计&lt;固件 C 字营&gt;C

    架应用程序可以直接访问 EC RAM、 I/O 端口、Memory 地址、芯片寄存器、Setup NV 设 定值,以及其他的系统设备资源。’ 本 Demo 提供了 3 个 Method,在 windows 下应用程序调用 API 即可完成对 EC RAM (offset ...

    《Visual.C#.编程精彩百例》配套光盘part1

    第1篇 Visual C#基础编程实例 实例1 C#经典程序--Hello World 实例2 C#的简单输入输出(I/O) 实例3 C#的复杂输入输出(I/O) 实例4 通信录管理与维护 实例5 文件与目录管理 实例6 用户界面...

    爱普生培训资料:创建程序.pdf

    操作员可以选择 64 个程序,并可以使用“暂停/继续”按钮、I/O 监视器、机器人管理器和系统历史查看器。 4. 远程控制 使用远程控制打开/关闭电机,将机器人返回起始点,启动程序等。控制装置必须在[设置]-[设置...

    《Visual.C#.编程精彩百例》配套光盘.part2

    第1篇 Visual C#基础编程实例 实例1 C#经典程序--Hello World 实例2 C#的简单输入输出(I/O) 实例3 C#的复杂输入输出(I/O) 实例4 通信录管理与维护 实例5 文件与目录管理 实例6 用户界面...

    《微机技术及应用》第六章串并行通信及接口技术习题+答案1

    《微机技术及应用》第六章串并行通信及接口技术习题+答案填空题1.可编程接口芯片8255A含有 个 位的I/O口。2.可编程接口芯片8255A的 I/O口可以通过

    winio dll 类库

    WinIO程序库允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作。通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,它绕过了Windows系统的保护机制。

    《微机技术及应用》第五章微机与外设的数据传输习题+答案1

    《微机技术及应用》第五章微机与外设的数据传输习题+答案一、填空题1.计算机对I/O端口的编址方法有 、 两种。8086CPU中一般采用 编址方法。2.CPU与I

    微机原理串行通信SerialPort

    System.IO.Ports命名空间包含了控制串口重要的SerialPort类,该类提供了同步 I/O 和事件驱动的 I/O、对管脚和中断状态的访问以 及对串行驱动程序属性的访问,所以在程序代码起始位置需加入Using System.IO.Ports。 ...

    C#全能速查宝典

    《C#全能速查宝典》共分为8章,分别介绍了C#语言基础、Windows窗体及常用控件、Windows高级控件、控件公共属性、方法及事件、数据库开发、文件、数据流与注册表、GDI+绘图技术和C#高级编程,共包含562个C#编程中常用...

Global site tag (gtag.js) - Google Analytics