您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ zstr_sendm函数代码示例

51自学网 2021-06-03 12:02:25
  C++
这篇教程C++ zstr_sendm函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中zstr_sendm函数的典型用法代码示例。如果您正苦于以下问题:C++ zstr_sendm函数的具体用法?C++ zstr_sendm怎么用?C++ zstr_sendm使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了zstr_sendm函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: zyre_node_ping_peer

static intzyre_node_ping_peer (const char *key, void *item, void *argument){    zyre_peer_t *peer = (zyre_peer_t *) item;    zyre_node_t *self = (zyre_node_t *) argument;    if (zclock_mono () >= zyre_peer_expired_at (peer)) {        if (self->verbose)            zsys_info ("(%s) peer expired name=%s endpoint=%s",                self->name, zyre_peer_name (peer), zyre_peer_endpoint (peer));        zyre_node_remove_peer (self, peer);    }    else    if (zclock_mono () >= zyre_peer_evasive_at (peer)) {        //  If peer is being evasive, force a TCP ping.        //  TODO: do this only once for a peer in this state;        //  it would be nicer to use a proper state machine        //  for peer management.        if (self->verbose)            zsys_info ("(%s) peer seems dead/slow name=%s endpoint=%s",                self->name, zyre_peer_name (peer), zyre_peer_endpoint (peer));        zre_msg_t *msg = zre_msg_new (ZRE_MSG_PING);        zyre_peer_send (peer, &msg);        // Inform the calling application this peer is being evasive    	zstr_sendm (self->outbox, "EVASIVE");	zstr_sendm (self->outbox, zyre_peer_identity (peer));    	zstr_send (self->outbox, zyre_peer_name (peer));    }    return 0;}
开发者ID:opedroso,项目名称:zyre,代码行数:29,


示例2: fmq_server_setoption

voidfmq_server_setoption (fmq_server_t *self, const char *path, const char *value){    zstr_sendm (self->pipe, "SETOPTION");    zstr_sendm (self->pipe, path);    zstr_send  (self->pipe, value);}
开发者ID:JuanCerezuela,项目名称:filemq,代码行数:7,


示例3: zre_node_publish

voidzre_node_publish (zre_node_t *self, char *logical, char *physical){    zstr_sendm (self->pipe, "PUBLISH");    zstr_sendm (self->pipe, logical);    zstr_send  (self->pipe, physical);}
开发者ID:Aluminus,项目名称:zyre,代码行数:7,


示例4: main

int main (int argc, char *argv []){    zctx_t *context = zctx_new ();    void *publisher = zsocket_new (context, ZMQ_PUB);    if (argc == 2)        zsocket_connect (publisher, argv [1]);    else        zsocket_bind (publisher, "tcp://*:5556");    //  Ensure subscriber connection has time to complete    sleep (1);    //  Send out all 1,000 topic messages    int topic_nbr;    for (topic_nbr = 0; topic_nbr < 1000; topic_nbr++) {        zstr_sendm (publisher, "%03d", topic_nbr, ZMQ_SNDMORE);        zstr_send (publisher, "Save Roger");    }    //  Send one random update per second    srandom ((unsigned) time (NULL));    while (!zctx_interrupted) {        sleep (1);        zstr_sendm (publisher, "%03d", randof (1000), ZMQ_SNDMORE);        zstr_send (publisher, "Off with his head!");    }    zctx_destroy (&context);    return 0;}
开发者ID:arimogi,项目名称:zguide,代码行数:28,


示例5: zyre_node_stop

static intzyre_node_stop (zyre_node_t *self){    if (self->beacon) {        //  Stop broadcast/listen beacon        beacon_t beacon;        beacon.protocol [0] = 'Z';        beacon.protocol [1] = 'R';        beacon.protocol [2] = 'E';        beacon.version = BEACON_VERSION;        beacon.port = 0;            //  Zero means we're stopping        zuuid_export (self->uuid, beacon.uuid);        zsock_send (self->beacon, "sbi", "PUBLISH",            (byte *) &beacon, sizeof (beacon_t), self->interval);        zclock_sleep (1);           //  Allow 1 msec for beacon to go out        zpoller_remove (self->poller, self->beacon);        zactor_destroy (&self->beacon);    }    //  Stop polling on inbox    zpoller_remove (self->poller, self->inbox);    zstr_sendm (self->outbox, "STOP");    zstr_sendm (self->outbox, zuuid_str (self->uuid));    zstr_send (self->outbox, self->name);    return 0;}
开发者ID:opedroso,项目名称:zyre,代码行数:25,


示例6: zre_interface_publish

//  Publish file into virtual spacevoidzre_interface_publish (zre_interface_t *self,                       char *filename, char *external){    zstr_sendm (self->pipe, "PUBLISH");    zstr_sendm (self->pipe, filename);  //  Real file name    zstr_send  (self->pipe, external);  //  Location in virtual space}
开发者ID:AlexGiovanentti,项目名称:zguide,代码行数:9,


示例7: zyre_whisper

intzyre_whisper (zyre_t *self, const char *peer, zmsg_t **msg_p){    assert (self);    assert (peer);    zstr_sendm (self->actor, "WHISPER");    zstr_sendm (self->actor, peer);    zmsg_send (msg_p, self->actor);    return 0;}
开发者ID:VanL,项目名称:zyre,代码行数:10,


示例8: zyre_shout

intzyre_shout (zyre_t *self, const char *group, zmsg_t **msg_p){    assert (self);    assert (group);    zstr_sendm (self->actor, "SHOUT");    zstr_sendm (self->actor, group);    zmsg_send (msg_p, self->actor);    return 0;}
开发者ID:VanL,项目名称:zyre,代码行数:10,


示例9: curve_client_connect

voidcurve_client_connect (curve_client_t *self, char *endpoint, byte *server_key){    assert (self);    assert (endpoint);    assert (server_key);    zstr_sendm (self->control, "CONNECT");    zstr_sendm (self->control, endpoint);    zmq_send (self->control, server_key, 32, 0);}
开发者ID:zeromq,项目名称:libcurve,代码行数:10,


示例10: zyre_peer_header_value

char *zyre_peer_header_value (zyre_t *self, const char *peer, const char *name){    assert (self);    assert (peer);    assert (name);    zstr_sendm (self->actor, "PEER HEADER");    zstr_sendm (self->actor, peer);    zstr_send (self->actor, name);    return zstr_recv (self->actor);}
开发者ID:sphaero,项目名称:zyre,代码行数:11,


示例11: zyre_node_leave_peer_group

static zyre_group_t *zyre_node_leave_peer_group (zyre_node_t *self, zyre_peer_t *peer, char *name){    zyre_group_t *group = zyre_node_require_peer_group (self, name);    zyre_group_leave (group, peer);    //  Now tell the caller about the peer left group    zstr_sendm (self->pipe, "LEAVE");    zstr_sendm (self->pipe, zyre_peer_identity (peer));    zstr_send (self->pipe, name);    return group;}
开发者ID:codebrainz,项目名称:zyre,代码行数:13,


示例12: zyre_node_join_peer_group

static zyre_group_t *zyre_node_join_peer_group (zyre_node_t *self, zyre_peer_t *peer, char *name){    zyre_group_t *group = zyre_node_require_peer_group (self, name);    zyre_group_join (group, peer);    //  Now tell the caller about the peer joined group    zstr_sendm (self->pipe, "JOIN");    zstr_sendm (self->pipe, zyre_peer_identity (peer));    zstr_send (self->pipe, name);    return group;}
开发者ID:codebrainz,项目名称:zyre,代码行数:13,


示例13: zre_interface_header_set

voidzre_interface_header_set (zre_interface_t *self, char *name, char *format, ...){    assert (self);    va_list argptr;    va_start (argptr, format);    char *value = (char *) malloc (255 + 1);    vsnprintf (value, 255, format, argptr);    va_end (argptr);        zstr_sendm (self->pipe, "SET");    zstr_sendm (self->pipe, name);    zstr_send  (self->pipe, value);    free (value);}
开发者ID:erwink,项目名称:zyre,代码行数:15,


示例14: s_require_peer

static zre_peer_t *s_require_peer (agent_t *self, char *identity, char *address, uint16_t port){    zre_peer_t *peer = (zre_peer_t *) zhash_lookup (self->peers, identity);    if (!peer) {        //  Purge any previous peer on same endpoint        char endpoint [100];        snprintf (endpoint, 100, "%s:%hu", address, port);        zhash_foreach (self->peers, agent_peer_purge, endpoint);        peer = zre_peer_new (identity, self->peers, self->ctx);        zre_peer_connect (peer, self->identity, endpoint);        //  Handshake discovery by sending HELLO as first message        zre_msg_t *msg = zre_msg_new (ZRE_MSG_HELLO);        zre_msg_ipaddress_set (msg, zre_udp_host (self->udp));        zre_msg_mailbox_set (msg, self->port);        zre_msg_groups_set (msg, zhash_keys (self->own_groups));        zre_msg_status_set (msg, self->status);        zre_msg_headers_set (msg, zhash_dup (self->headers));        zre_peer_send (peer, &msg);                zre_log_info (self->log, ZRE_LOG_MSG_EVENT_ENTER,                      zre_peer_endpoint (peer), endpoint);        //  Now tell the caller about the peer        zstr_sendm (self->pipe, "ENTER");        zstr_send (self->pipe, identity);    }    return peer;}
开发者ID:Aluminus,项目名称:zyre,代码行数:31,


示例15: fmq_server_set_anonymous

voidfmq_server_set_anonymous (fmq_server_t *self, long enabled){    assert (self);    zstr_sendm (self->pipe, "SET ANONYMOUS");    zstr_sendf (self->pipe, "%ld", enabled);}
开发者ID:JuanCerezuela,项目名称:filemq,代码行数:7,


示例16: zyre_set_expired_timeout

//  --------------------------------------------------------------------------//  Set the node expiration timeout, in milliseconds. Default is 30000.//  This can be tuned in order to deal with expected network conditions//  and the response time expected by the application. This is tied to//  the beacon interval and rate of messages received.voidzyre_set_expired_timeout (zyre_t *self, int interval){    assert (self);    zstr_sendm (self->actor, "SET EXPIRED TIMEOUT");    zstr_sendf (self->actor, "%d", interval);}
开发者ID:sphaero,项目名称:zyre,代码行数:12,


示例17: curve_server_set_max_pending

voidcurve_server_set_max_pending (curve_server_t *self, int limit){    assert (self);    zstr_sendm (self->control, "MAX PENDING");    zstr_sendf (self->control, "%d", limit);}
开发者ID:GA-zz,项目名称:libcurve,代码行数:7,


示例18: curve_client_new

curve_client_t *curve_client_new (zcert_t **cert_p){    curve_client_t *self = (curve_client_t *) zmalloc (sizeof (curve_client_t));    assert (self);    self->ctx = zctx_new ();    self->control = zthread_fork (self->ctx, s_agent_task, NULL);    //  Create separate data socket, send address on control socket    self->data = zsocket_new (self->ctx, ZMQ_PAIR);    assert (self->data);    int rc = zsocket_bind (self->data, "inproc://data-%p", self->data);    assert (rc != -1);    zstr_sendm (self->control, "inproc://data-%p", self->data);       //  Now send cert on control socket as well    rc = zmq_send (self->control, zcert_public_key (*cert_p), 32, ZMQ_SNDMORE);    assert (rc == 32);    rc = zmq_send (self->control, zcert_secret_key (*cert_p), 32, 0);    assert (rc == 32);        zcert_destroy (cert_p);    return self;}
开发者ID:FlavioFalcao,项目名称:libcurve,代码行数:25,


示例19: fmq_client_set_resync

voidfmq_client_set_resync (fmq_client_t *self, long enabled){    assert (self);    zstr_sendm (self->pipe, "SET RESYNC");    zstr_sendf (self->pipe, "%ld", enabled);}
开发者ID:stephen-wolf,项目名称:filemq,代码行数:7,


示例20: curve_server_set_pending_ttl

voidcurve_server_set_pending_ttl (curve_server_t *self, int limit){    assert (self);    zstr_sendm (self->control, "PENDING TTL");    zstr_sendf (self->control, "%d", limit);}
开发者ID:GA-zz,项目名称:libcurve,代码行数:7,


示例21: zyre_set_interval

voidzyre_set_interval (zyre_t *self, size_t interval){    assert (self);    zstr_sendm (self->actor, "SET INTERVAL");    zstr_sendf (self->actor, "%zd", interval);}
开发者ID:VanL,项目名称:zyre,代码行数:7,


示例22: zyre_set_port

voidzyre_set_port (zyre_t *self, int port_nbr){    assert (self);    zstr_sendm (self->actor, "SET PORT");    zstr_sendf (self->actor, "%d", port_nbr);}
开发者ID:VanL,项目名称:zyre,代码行数:7,


示例23: zmonitor_set_verbose

voidzmonitor_set_verbose (zmonitor_t *self, bool verbose){    assert (self);    zstr_sendm (self->pipe, "VERBOSE");    zstr_sendf (self->pipe, "%d", verbose);}
开发者ID:TangCheng,项目名称:czmq,代码行数:7,


示例24: curve_server_set_verbose

voidcurve_server_set_verbose (curve_server_t *self, bool verbose){    assert (self);    zstr_sendm (self->control, "VERBOSE");    zstr_sendf (self->control, "%d", verbose);}
开发者ID:GA-zz,项目名称:libcurve,代码行数:7,


示例25: curve_server_set_max_clients

voidcurve_server_set_max_clients (curve_server_t *self, int limit){    assert (self);    zstr_sendm (self->control, "MAX CLIENTS");    zstr_sendf (self->control, "%d", limit);}
开发者ID:GA-zz,项目名称:libcurve,代码行数:7,


示例26: agent_ping_peer

static intagent_ping_peer (const char *key, void *item, void *argument){    agent_t *self = (agent_t *) argument;    zre_peer_t *peer = (zre_peer_t *) item;    char *identity = zre_peer_identity (peer);    if (zclock_time () >= zre_peer_expired_at (peer)) {        zre_log_info (self->log, ZRE_LOG_MSG_EVENT_EXIT,                      zre_peer_endpoint (peer),                      zre_peer_endpoint (peer));        //  If peer has really vanished, expire it        zstr_sendm (self->pipe, "EXIT");        zstr_send (self->pipe, identity);        zhash_foreach (self->peer_groups, agent_peer_delete, peer);        zhash_delete (self->peers, identity);    }    else    if (zclock_time () >= zre_peer_evasive_at (peer)) {        //  If peer is being evasive, force a TCP ping.        //  TODO: do this only once for a peer in this state;        //  it would be nicer to use a proper state machine        //  for peer management.        zre_msg_t *msg = zre_msg_new (ZRE_MSG_PING);        zre_peer_send (peer, &msg);    }    return 0;}
开发者ID:Aluminus,项目名称:zyre,代码行数:27,


示例27: curve_server_set_client_ttl

voidcurve_server_set_client_ttl (curve_server_t *self, int limit){    assert (self);    zstr_sendm (self->control, "CLIENT TTL");    zstr_sendf (self->control, "%d", limit);}
开发者ID:GA-zz,项目名称:libcurve,代码行数:7,


示例28: zyre_set_evasive_timeout

//  --------------------------------------------------------------------------//  Set the node evasiveness timeout, in milliseconds. Default is 5000.//  This can be tuned in order to deal with expected network conditions//  and the response time expected by the application. This is tied to//  the beacon interval and rate of messages received.voidzyre_set_evasive_timeout (zyre_t *self, int interval){    assert (self);    zstr_sendm (self->actor, "SET EVASIVE TIMEOUT");    zstr_sendf (self->actor, "%d", interval);}
开发者ID:sphaero,项目名称:zyre,代码行数:12,


示例29: zauth_set_verbose

voidzauth_set_verbose (zauth_t *self, bool verbose){    assert (self);    zstr_sendm (self->pipe, "VERBOSE");    zstr_send  (self->pipe, "%d", verbose);}
开发者ID:AndreasBomholtz,项目名称:czmq,代码行数:7,


示例30: ipcam_service_send_strings

gboolean ipcam_service_send_strings(IpcamService *service,                                    const gchar *name,                                    const gchar *strings[],                                    const gchar *client_id){    gboolean ret = FALSE;    gint type;    void *mq_socket = NULL;    IpcamServicePrivate *priv = ipcam_service_get_instance_private(service);    g_return_val_if_fail(ipcam_socket_manager_get_by_name(priv->socket_manager, name, &type, &mq_socket), FALSE);    switch(type)    {    case IPCAM_SOCKET_TYPE_SERVER:        g_return_val_if_fail(client_id, FALSE);        zstr_sendm(mq_socket, client_id);        zmq_send_strings(mq_socket, strings);        ret = TRUE;        break;    case IPCAM_SOCKET_TYPE_PUBLISHER:    case IPCAM_SOCKET_TYPE_CLIENT:        zmq_send_strings(mq_socket, strings);        ret = TRUE;        break;    default:        break;    }    return ret;}
开发者ID:dulton,项目名称:libipcam_base,代码行数:28,



注:本文中的zstr_sendm函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ zstr_sendx函数代码示例
C++ zstr_send函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。