1 Mart 2017 Çarşamba

asio posix stream_descriptor sınıfı

Constructor
Şöyle yaparız
asio::io_service ios;
asio::posix::stream_descriptor stream_desc (ios);
Constructor - fd
Şöyle yaparız.
asio::posix::stream_descriptor out(ios, ::dup(STDOUT_FILENO));
assign metodu - fd
Açılan file descriptor şöyle atanır.
int raw_fd = inotify_init ();
stream_desc.assign (raw_fd);
assign metodu - fd + error_code
Uygulamamızı şöyle kullanırız.
cat somefile.txt | myprog
Şöyle yaparız.
boost::system::error_code error;
stream_desc.assign(dup(STDIN_FILENO), error);
if ( error ) {
  ...
}
async_read_some metodu
Verilen buffer içine eldeki veri doldurulur.
stream_desc.async_read_some (buf.prepare(buf.max_size()),
        boost::bind(&notify_handler, asio::placeholders::error,
                    asio::placeholders::bytes_transferred));
is_open metodu
Şöyle yaparız.
if (stream_desc.is_open() ) {...}

Hiç yorum yok:

Yorum Gönder