草庐IT

ZMQ_STREAM

全部标签

c++ - zeromq 3.1 C++ API 'device' 不是 'zmq' 的成员

我注意到设备不是3.0api的一部分......我应该使用什么来代替?zmq::device(ZMQ_QUEUE,clients,workers);我发现设备已经移到了这里:https://github.com/zeromq/libzfl 最佳答案 有点糊涂,下面是故事。我继承维护0MQ/2.x的时候,有一个zmq_device()函数,还有一套外接设备app,XML配置的小主程序。我之前曾尝试改进和记录人们正在使用的这两层,但维护人员拒绝了补丁。然后我们将外部应用程序移动到zdevices项目,具有更灵活的配置等。最终这些应用程序

java - JNI Stream 二进制数据从 C++ 到 Java

我需要帮助将二进制数据传递到Java。我正在尝试使用jbytearray,但是当数据进入Java时,它似乎已损坏。有人可以帮帮我吗?这是一些示例代码的片段。首先是nativeC++端:printf("Buildingaudioarraycopy\n");jbyteArrayrawAudioCopy=env->NewByteArray(10);jbytetoCopy[10];printf("Fillingaudioarraycopy\n");chartheBytes[10]={0,1,2,3,4,5,6,7,8,9};for(inti=0;iSetByteArrayRegion(rawA

c++ - Boost 序列化/反序列化存档 "stream error"异常

我有以下问题..我有一个名为A.h的文件和一个名为B.h的文件。每个都包含这样的结构:(两个类中的结构不同)structBase{friendclassaccess;templatevoidserialize(Archive&ar,constunsignedintversion){ar&fieldLength;ar&fieldMD;ar&fieldTime_Stamp;}public:unsignedintfieldLength;unsignedintfieldMD;unsignedintfieldTime_Stamp;virtualvoidf(){}//tobepolymorphic

c++ - 如何将 boost::asio::tcp::io_stream 附加到我的 io_service?

我习惯使用boost::asio::ip::tcp::socket我在哪里construct他们用io_service.这很有用,因为我有一个用于所有套接字的io_service,并且这些套接字共享一个线程池。现在,我正在尝试使用boost::asio::ip::tcp::io_stream,我希望它在同一个线程池中执行所有异步工作。但是,似乎不可能construct带有外部io_service的tcp::io_stream。底层套接字确实使用了内部初始化的io_service。有没有办法让我继续使用集中管理的io_service和tcp::io_stream?我使用的是boost版本

c++ - 实现可以转换为 Stream<U> 的 Stream<T>,其中 U 是 T 的基数

我正在尝试实现一个通用的对象输入流。即,实现的接口(interface)或轻量级代理。实现的细节是未知的,即我的库的用户可以编写自己的流,比如protobuf消息,将它传递到我的库并返回,比如字符串流或任何其他流。我想保持流的通用接口(interface),以便用户可以编写自己的转换并构建转换管道。流的接口(interface)应该是这样的:templateclassStream{public:T*input();}在每次通话中,input()如果流为空,应返回流中的下一个对象或空指针。问题是我想要Stream可转换为Stream如果T*可转换为U*.我不成功的尝试是像这样使用指向实现

c++ - 流、stream_bufs、codecvt 方面和\n 到\r\n 翻译

\r到\r\n转换的C++IO流的哪一部分?它是stream_buf本身,还是codecvt方面的内部到外部编码转换的一部分?更新1你们都说在streambuf/filebuf中完成。行。但是这种安排如何处理诸如UTF-16之类的外部编码?然后似乎必须使用禁用翻译的ios::binary标志打开文件。 最佳答案 这种转换(通常)不是由流、streambuf或facet执行的。由streambuf的fputc()调用的C库代码(例如overflow())负责和underflow().如果您出于某种原因需要它(例如,在实现dos2uni

c++ - Boost IO Stream 和 ZLib 提速

我有一个大文件,我使用Zlib使用boostIOStreams和过滤流缓冲区压缩了数据:boost::iostreams::array_sourceuncompressedArray(reinterpret_cast(&uncompressedData[0]),uncompressedData.size());boost::iostreams::filtering_streambufout;out.push(*m_compressor);out.push(boost::iostreams::char_back_inserter(compressedData));boost::iostr

c++ - 即使在上下文终止后 ZMQ recv() 仍在阻塞

我已尽力按照ZMQterminationwhitepaper中的说明进行操作,但到目前为止我失败得很惨。我有一个父类,它生成一个监听器线程(使用win32-pthreads)。根据白皮书,终止时,我应该设置_stopped标志,删除上下文,这反过来会调用zmq_term()并释放阻塞接收()。相反,我得到的是:调用delete_zmqContext会使应用程序崩溃(可能是段错误)用zmq_term(_zmqContext)替换delete不会释放阻塞recv()我正在添加部分代码示例,该示例很长,因为我不确定哪部分可能很重要。AsyncZmqListener.hpp:classAsyn

c++ - ZMQ C++ Req 到路由器问题

我在我的网络层使用ZeroMQ,到目前为止一切正常,除了ROUTER套接字。特别是我在ROUTER上收到了预期的消息,但是当我尝试将答案发送回我的REQ套接字时,该消息从未收到过。这是我编写的一个相对简单的测试,它尝试向ROUTER发送“HELLO”消息并期望消息返回。这里是客户端代码:try{zmq::context_tmyContext;zmq::socket_treqSocket(myContext,ZMQ_REQ);reqSocket.setsockopt(ZMQ_IDENTITY,"REQ",3);reqSocket.connect(gpRouterAddress);//re

c++ - QT中QByteArray和QByte Stream如何释放内存

我想知道如何在这段代码中从QT中释放QByteArray和QByteStream:QByteArrayDicResourceByteArray;QDataStreamout(&DicResourceByteArray,QIODevice::WriteOnly);QStringencoded;out.writeRawData(DicBlock.data+pos,DicBlock.length-pos);encoded=QString(DicResourceByteArray.toBase64()); 最佳答案 根据RAII,一旦超出范