boost-asio相关内容
我感到困惑的升压ASIO ::流缓冲类的输入序列和输出序列。 根据本code实施例(用于发送数据)的文档中似乎缓冲器重新presenting输入序列被用于书面方式向插座和一个重新presenting输出序列是用于读取。 示例 - 的boost ::支持ASIO ::流缓冲B: 的std :: ostream的操作系统(和b); OS<< “您好!,世界\\ n”; //尝试在输入
..
我必须写异步TCP Sever的。 TCP服务器必须通过控制台进行管理 (对于如:删除客户端,所有连接的客户端的显示列表中,ETCC ..) 问题是:我怎么可以附加(或写)控制台,它可以在上面的功能调用。 此控制台必须是一个客户端?我应该运行这个控制台客户端作为sepearate线程? 我读了很多的教程,我couldn`t找到解决我的问题。 ServerTCP code 类Serve
..
在提升网站提供的文档...有限的。 从我已经能够读,普遍的共识是,它仅仅是很难找到了boost :: ASIO库好的文档。 这是真的吗?如果是这样,为什么? 注: 我已经找到了(非增压)短耳网站 - 和文档看起来是相同的,在升压网站。 我知道的boost :: ASIO是新的!我在寻找解决方案不是借口。 编辑: 有一个建议添加一个网络库标准库ASIO(克里斯托弗Kohlh
..
有没有办法取消挂起的操作(没有断开连接)或设置为升压库函数超时? 即。我想设置一个超时的升压ASIO阻挡套接字? socket.read_some(提高:: ASIO ::缓冲区(pData所,MAXSIZE),错误_); 例如:我想从插座看了一些,但我想如果在10秒过去了抛出一个错误。 解决方案 在Linux / BSD上的插座上的I / O操作的超时时间直接由操作系统支持 。该
..
如何创建在C ++使用boost线程池,以及我如何将任务分配给线程池? 解决方案 这个过程是pretty简单。首先创建一个ASIO :: io_service对象和thread_group。填补挂io_service对象线程thread_group。将任务分配给使用的boost ::绑定功能的线程。 要停止线程(通常,当你退出程序)只是停止io_service对象,并加入所有线程。 您
..
我检讨item第三段说同样的事情)2。哪里是在多线程环境中的风险? 解决方案 该文档是正确的。与半双工协议实现,如
..
我有发送多个背靠背使用boost ASIO独立的UDP缓冲区的一个问题。我有1秒的定时器ASIO触发该通过UDP传输2个独立的UDP数据报结构的回调。每个这些消息的结构通过的std ::分配的unique_ptr,因此他们不应该由异步CADaemon :: handle_send回调被调用的时候走出去的范围。 无效 CADaemon :: heartBeatTimer( 常量毫秒&安培;
..
我试图让使用的的boost :: ASIO 。我已经阅读文档和教程官方,但我仍然无法得到它的权利。 我的问题是专门在客户端。这是我想在客户端做的事:它必须发送一个简单的数据包到服务器在运行本地主机:12345 并随后监听服务器发送的响应数据报。那不是我得到,虽然。貌似客户端发送数据报好的,但它接收到它自己的数据报后吧!有人问以前没有,服务器没有运行: - ) 功能 send_datagra
..
我想code的包装在一个boost :: ASIO ::知识产权:: TCP ::插座 类似的东西: 类Socket { 上市: 无效async_read(AsyncReadStream&安培; S, 常量的boost ::支持ASIO :: MutableBufferSequence&安培;缓冲区,
..
我不知道什么清理最好的(干净的,最难把事情弄糟)方法是在这种情况下。 无效MyClass的:: do_stuff(提高:: ASIO :: yield_context上下文){ 而(running_){ uint32_t的数据= async_buffer->读取(背景); //做其他的东西 } } Read是一个呼叫哪个异步等待直到存在要读出的数据,然后返回该
..
我在建造使用的boost :: ASIO一个Socket类的过程。首先,我做了一个连接那了主机和端口,并将其解析为IP地址的方法。这个工作很好,所以我决定在仰望 async_resolve 。然而,我的回调总是得到一个错误code 995 (使用相同的目标主机/端口时,它的工作同步)。 code 这将启动分辨率功能: //解析主机异步 模板< typename的ResolveHa
..
我有两种情况: 客户端连接,不发送字节,并等待服务器的响应。 客户端连接,发送超过1个字节,然后等待服务器的响应。 问题是下一: 在第一种情况我应该读任何字节,并得到一些服务器响应。 在第二种情况,我应该至少读1字节,才把我会得到一个服务器响应。 如果我尝试至少阅读0字节,是这样的: async_read(袜子,提高:: ASIO ::缓冲区(数据)
..
请问
..
已经打了很多的后期Boost.Asio的。我喜欢图书馆了很多,因为它提供了一个很好的方式去挤表现出来今天的多核系统。 有一个问题,我问自己几次,我以为值得抛出使得与异步调用短耳时,有问候的对象生命周期/所有权。 我已经多次来到翻过的问题是,你往往不得不“过期”仍然有反对未决的异步回调的对象。如果该对象超出范围的回调调用之前的事情不可避免地一声巨响。 为了解决这个问题我已经采取了使用的boos
..
做任何异步接口对于MySQL存在,可以C或C ++应用程序中使用?我在找的东西,可以插入一个反应堆格式写在 Boost.Asio的 [编辑:]在运行的线程同步连接器是不是一种选择 解决方案 HTTP: //forums.mysql.com/read.php?45,183339,183339 享受 更新链接到原始文章展示了如何做异步的MySQL查询: http://jan.knesc
..
我端起它使用的boost ::短耳到嵌入式系统中的应用程序。 我已经交叉编译升压1.57.0的二进制文件使用的BSP板。为了测试库工作,我跑了使用同步的两个HTTP服务器实例和异步写入分别 该版本同步运行罚款;而异步逐一写失败。它返回的错误“操作被取消”。 任何人都可以指出我应该在哪里找?谢谢你。 / * *升压短耳::例如异步 * / #包括LT&;&iostream的GT;
..
我需要插座般的本地IPC。我用命名管道和重叠IO上的窗户,我想重写应用程序,以提高:: ASIO,以便它可以使用UNIX域套接字为好。 我最近审查libevent库的一部分,我知道它仅支持在1.4版本的Windows套接字()并选择()。作为重叠IO是非常有效的留出很明显这是在第2版(这是在阿尔法)被不客气不可接受性状。亚最佳实施的另一个例子是使用红 - 黑树与PRIO-队列这是不客气沿线的某个
..
我学习的boost :: ASIO和所有的东西异步。我怎么可以异步读取类型为std变量用户_ :: string的? 的boost :: ASIO ::缓冲区(用户_)仅 async_write作品(),但不能与 async_read()。它与载体,那么什么是它不与字符串工作的原因吗?是否有另一种方式做到这一点,除了宣告字符用户_ [MAX_LEN] ,并使用的boost :: ASIO ::
..
短的问题:我有运行为底色的过程,并与管道调用pogramm连接的实时仿真。我想送命令使用标准输入来获取通过标准输出从它的某些信息的过程。现在,因为它是一个实时处理,它必须是一个非阻塞输入。为提高:: ASIO :: async_read结合的iostream :: CIN这个任务是一个好主意?我将如何使用该功能,如果它是可行的?任何建议? 解决方案 看看的boost ::支持ASIO ::
..
我写一个简单的TCP客户端发送和接收单行文本。异步操作通过的std ::今后要想旨在便利阻塞查询与超时处理。不幸的是,我的测试应用程序自毁服务器对象时访问冲突崩溃。 这里是我的code: TCPClient.hpp 的#ifndef __TCPCLIENT_H__ #定义__TCPCLIENT_H__#包括LT&;升压/ asio.hpp> #包括LT&;升压/ ASIO / use_
..