1
20
boost.asio有任何类型的文件支持吗?从(我认为)Boost 1.36(包含Asio 1.2.0)开始,您可以使用[Boost::Asio::]windows::stream\u句柄或windows::random\u access\u句柄包装句柄,并在其上执行异步读写方法,这些方法在内部使用重叠结构。 用户Lazin还提到boost::asio::windows::random\u access\u句柄,可用于异步操作(例如命名管道,但也包括文件)。 boost.asio文件支持对于日常文件i/o是否足够成熟?由于Boost.Asio本身目前已被广泛使用,而且实现在内部使用了重叠IO,我想说是的。 因为在地图上找不到路线图 Asio 我想说的是,对于这个功能,Boost.Asio不会有新的添加。尽管贡献者总是有机会向Boost.Asio添加代码和类。也许你甚至可以自己贡献缺失的部分!:-) |
2
7
Linux上的boost::asio文件i/o
在Linux上,asio使用
解决方法是将asio配置为使用
boost::Windows上的asio文件i/o
在Windows上,您可以使用
|
3
5
|
4
4
ASIO在支持良好的Windows上支持重叠I/O。在Unix上,由于以下原因,这一想法停滞不前:
核函数 这是为你处理的。再次否定使用异步文件I/O的原因。 简而言之:ASIO似乎反映了底层操作系统的设计理念,大多数Unix开发人员都忽略了重叠I/O,因此该平台不支持它。 |
5
0
Linux有一个asio库,在这项工作中使用它并不比使用Windows API困难(我曾经使用过它)。两套操作系统都实现了相同的概念体系结构。它们在编写一个好的库的相关细节上有所不同,但并不是说两种操作系统平台都不能有一个通用接口(我用过一个)。 基本上,所有类型的异步文件I/O都遵循“Fry-Cook”体系结构。以下是我在阅读操作上下文中的意思:我(处理线程)去快餐柜台(OS)要一个奶酪汉堡(一些数据)。它给了我一份订购单(一些数据结构)的副本,并在后面向cook(内核和文件系统)发出一份订购单来烹饪我的汉堡。然后我坐下来或看我的手机(做其他工作)。后来,有人宣布我的汉堡准备好了(向处理线程发送信号),我收集食物(读取缓冲区)。 |
6
0
爱改变了一切。
|
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |