随机存取句柄

Asio提供Windows独有的类来保证对于句柄的同步、异步读写操作能像操作普通文件一样。

例如:

HANDLE handle = ::CreateFile(...);
windows::random_access_handle file(my_io_service);

在该对象中读写数据使用read_some_at(), async_read_some_at(), write_s ome_at() 或者 async_write_some_at()等成员函数中的任意一个。然而,有些等效的函数( read_some()等),只能在传输一个或者几个byte等简单操作时使用。自由函数们调用*_some_at()形式的函数直到数据被传输完。

参见

windows::random_access_handle, windows::basic_random_access_handle, windows::random_access_handle_service

注意

你可以用 ASIO_HAS_WINDOWS_RANDOM_ACCESS_HANDLE宏来判定该功能是否可用,不能则会在编译期报错。

results matching ""

    No results matching ""