消息支持库
建议结合protobuf库使用
libzmq.dll
创建环境上下文
参数可选,默认值为1
可选使用参数@2指定多线程共享名称
检测最后调用API发生的错误
如果存在错误则返回两个值:
错误信息,错误代码
创建消息对象,初始化默认缓冲区
创建消息对象,所有参数可选
缓冲区如果是字符串或可转换为字符串的对象,则忽略后续所有参数,
缓冲区如果为空,则可选使用第二个参数指定长度,其他参数忽略,
缓冲区如果为pointer指针,则必须使用第二个参数指定长度,
缓冲区如果是cdata对象,则忽略第二个参数
缓冲区如果是结构体或数值,则调用raw.malloc转换为cdata对象
如果指定析构函数,当不再需要消息缓冲区时回调该函数,
缓冲区指针,附加指针参数将作为回调的实参.
阻塞直到至少发生一个接收事件
参数@1指定超时,以毫秒为单位,-1为一直等待,
参数@2可以是任意个zmq_socket对象,也可以是包含多个对象的数组
成功返回包含事件代码的数组
阻塞直到至少发生一个发送事件
参数@1指定超时,以毫秒为单位,-1为一直等待,
参数@2可以是任意个zmq_socket对象,也可以是包含多个对象的数组
成功返回包含事件代码的数组
返回主版本号,次版本号,修订版本号
释放对象
该函数在线程结束时会作为析构函数自动调用.
创建pair模式socket,可自行配对,
任何一方都可以做为服务端
创建socket
创建socket,与pub模式配对
任何一方都可以做为服务端
创建socket,与push模式配对
任何一方都可以做为服务端
创建socket,与pull模式配对
任何一方都可以做为服务端
创建socket,与request模式配对
任何一方都可以做为服务端
创建socket,与reply模式配对
任何一方都可以做为服务端
创建socket
创建socket,与sub模式配对
任何一方都可以做为服务端
创建socket
创建socket
释放消息对象
复制消息缓冲区
返回缓冲区指针
是否有更多的消息帧
获取消息属性,属性名可指定:Socket-Type,Identity,Resource
返回缓冲区长度
以字符串形式返回缓冲区内容
移动消息缓冲区
发送消息
成功返回长度,失败返回null
发送消息
成功返回长度,失败返回null
绑定
关闭socket
连接
断开连接
值必须是一个结构体对象
成功返回更新的结构体对象.
接收消息帧
成功返回长度,失败或超时返回null
参数一可选指定缓冲区指针.
所有参数可选,如果仅指定长度则自动创建缓冲区
接收消息
成功返回长度,失败或超时返回null
如果参数一不是一个消息对象,则创建临时消息对象并尝试返回接收的字符串
选项为_ZMQ_DONTWAIT时立即返回不阻塞,收不到返回null
选项为可选参数可省略
发送消息帧\参数一可以是字符串或指针.n选项为_ZMQ_DONTWAIT时立即返回不阻塞,收不到返回null
选项为可选参数可省略
发送消息
成功返回长度,失败返回null
参数一也可以是能转换为字符串的对象、或结构体、buffer指针等
选项为可选参数可省略
设置接收超时,单位毫秒
设置发送超时,单位毫秒
值必须是一个结构体对象
成功返回true
解除绑定
_ZMQ_AFFINITY=4
_ZMQ_BACKLOG=0x13
_ZMQ_DEALER=5
_ZMQ_DELIMITER=0x1F
_ZMQ_DONTWAIT=1
_ZMQ_EVENTS=0xF
_ZMQ_EVENT_ACCEPTED=0x20
_ZMQ_EVENT_ACCEPT_FAILED=0x40
_ZMQ_EVENT_ALL=0xFFFF
_ZMQ_EVENT_BIND_FAILED=0x10
_ZMQ_EVENT_CLOSED=0x80
_ZMQ_EVENT_CLOSE_FAILED=0x100
_ZMQ_EVENT_CONNECTED=1
_ZMQ_EVENT_CONNECT_DELAYED=2
_ZMQ_EVENT_CONNECT_RETRIED=4
_ZMQ_EVENT_DISCONNECTED=0x200
_ZMQ_EVENT_LISTENING=8
_ZMQ_EVENT_MONITOR_STOPPED=0x400
_ZMQ_FD=0xE
_ZMQ_FORWARDER=2
_ZMQ_HWM=1
_ZMQ_IDENTITY=5
_ZMQ_IO_THREADS=0x1
_ZMQ_LINGER=0x11
_ZMQ_MAX_SOCKETS=0x2
_ZMQ_MCAST_LOOP=0xA
_ZMQ_MSG_MASK=0x81
_ZMQ_MSG_MORE=1
_ZMQ_MSG_SHARED=0x80
_ZMQ_NOBLOCK=1
_ZMQ_PAIR=0
_ZMQ_POLLERR=4
_ZMQ_POLLIN=1
_ZMQ_POLLOUT=2
_ZMQ_PUB=1
_ZMQ_PULL=7
_ZMQ_PUSH=8
_ZMQ_QUEUE=3
_ZMQ_RATE=8
_ZMQ_RCVBUF=0xC
_ZMQ_RCVMORE=0xD
_ZMQ_RECONNECT_IVL=0x12
_ZMQ_RECONNECT_IVL_MAX=0x15
_ZMQ_RECOVERY_IVL=9
_ZMQ_REP=4
_ZMQ_REQ=3
_ZMQ_ROUTER=6
_ZMQ_SNDBUF=0xB
_ZMQ_SNDMORE=2
_ZMQ_SOCKET_LIMIT=0x3
_ZMQ_STREAMER=1
_ZMQ_SUB=2
_ZMQ_SUBSCRIBE=6
_ZMQ_SWAP=3
_ZMQ_THREAD_PRIORITY=0x3
_ZMQ_THREAD_SCHED_POLICY=0x4
_ZMQ_TYPE=0x10
_ZMQ_UNSUBSCRIBE=7
_ZMQ_VSM=0x20
_ZMQ_XPUB=9
_ZMQ_XSUB=0xA