本文整理汇总了Golang中github.com/pebbe/zmq2.Socket类的典型用法代码示例。如果您正苦于以下问题:Golang Socket类的具体用法?Golang Socket怎么用?Golang Socket使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Socket类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: echo
// Echo service
func echo(socket *zmq.Socket) (err error) {
msg, err := socket.RecvMessage(0)
if err != nil {
return
}
_, err = socket.SendMessage(msg)
return
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:9,代码来源:bstarsrv2.go
示例2: inputData
func inputData(data string, socket *zmq.Socket) {
// Send data through socket
_, err := socket.SendBytes([]byte(data), 0)
if err != nil {
log.Println("Error sending data")
}
}
开发者ID:jessicachango,项目名称:tas,代码行数:8,代码来源:twitter_example.go
示例3: zmqToWebsocket
// listen on a zmq SUB socket
// and shovel messages from it out to the websockets
func zmqToWebsocket(subsocket zmq.Socket) {
for {
address, _ := subsocket.Recv(0)
content, _ := subsocket.Recv(0)
fmt.Println("received a zmq message")
fmt.Println(string(address))
fmt.Println(string(content))
runningRoom.SendMessage(envelope{string(address), string(content)})
}
}
开发者ID:nikolas,项目名称:windsock,代码行数:12,代码来源:windsock.go
示例4: zmqToWebsocket
// listen on a zmq SUB socket
// and shovel messages from it out to the websockets
func zmqToWebsocket(subsocket zmq.Socket) {
for {
address, _ := subsocket.Recv(0)
content, _ := subsocket.Recv(0)
log.WithFields(log.Fields{
"address": string(address),
"content": string(content),
}).Info("received a zmq message")
runningRoom.SendMessage(envelope{string(address), string(content)})
}
}
开发者ID:thraxil,项目名称:windsock,代码行数:13,代码来源:windsock.go
示例5: voter_ready
// Application wants to speak to us, see if it's possible
func (bstar *Bstar) voter_ready(socket *zmq.Socket) error {
// If server can accept input now, call appl handler
bstar.event = client_REQUEST
err := bstar.execute_fsm()
if err == nil {
bstar.voter_fn(socket)
} else {
// Destroy waiting message, no-one to read it
socket.RecvMessage(0)
}
return nil
}
开发者ID:thraxil,项目名称:windsock,代码行数:13,代码来源:bstar.go
示例6: RecvKvmsg
// The RecvKvmsg function reads a key-value message from socket, and returns a new
// Kvmsg instance.
func RecvKvmsg(socket *zmq.Socket) (kvmsg *Kvmsg, err error) {
kvmsg = &Kvmsg{
present: make([]bool, kvmsg_FRAMES),
frame: make([]string, kvmsg_FRAMES),
}
msg, err := socket.RecvMessage(0)
if err != nil {
return
}
//fmt.Printf("Recv from %s: %q\n", socket, msg)
for i := 0; i < kvmsg_FRAMES && i < len(msg); i++ {
kvmsg.frame[i] = msg[i]
kvmsg.present[i] = true
}
return
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:18,代码来源:kvsimple.go
示例7: snapshots
func snapshots(socket *zmq.Socket, srv *clonesrv_t) (err error) {
msg, err := socket.RecvMessage(0)
if err != nil {
return
}
identity := msg[0]
// Request is in second frame of message
request := msg[1]
if request != "ICANHAZ?" {
err = errors.New("E: bad request, aborting")
return
}
subtree := msg[2]
// Send state socket to client
for _, kvmsg := range srv.kvmap {
if key, _ := kvmsg.GetKey(); strings.HasPrefix(key, subtree) {
socket.Send(identity, zmq.SNDMORE)
kvmsg.Send(socket)
}
}
// Now send END message with sequence number
log.Println("I: sending shapshot =", srv.sequence)
socket.Send(identity, zmq.SNDMORE)
kvmsg := kvmsg.NewKvmsg(srv.sequence)
kvmsg.SetKey("KTHXBAI")
kvmsg.SetBody(subtree)
kvmsg.Send(socket)
return
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:34,代码来源:clonesrv6.go
示例8: dump
func dump(soc *zmq.Socket) {
fmt.Println("----------------------------------------")
for {
// Process all parts of the message
message, _ := soc.Recv(0)
// Dump the message as text or binary
fmt.Printf("[%03d] ", len(message))
if all_char.MatchString(message) {
fmt.Print(message)
} else {
for i := 0; i < len(message); i++ {
fmt.Printf("%02X ", message[i])
}
}
fmt.Println()
more, _ := soc.GetRcvmore()
if !more {
break
}
}
}
开发者ID:patrickToca,项目名称:zmq2,代码行数:23,代码来源:identity.go
示例9: Send
// Send key-value message to socket; any empty frames are sent as such.
func (kvmsg *Kvmsg) Send(socket *zmq.Socket) (err error) {
//fmt.Printf("Send to %s: %q\n", socket, kvmsg.frame)
kvmsg.encode_props()
_, err = socket.SendMessage(kvmsg.frame)
return
}
开发者ID:rrudduck,项目名称:golang-stuff,代码行数:7,代码来源:kvmsg.go
示例10: set_id
func set_id(soc *zmq.Socket) {
identity := fmt.Sprintf("%04X-%04X", rand.Intn(0x10000), rand.Intn(0x10000))
soc.SetIdentity(identity)
}
开发者ID:rrudduck,项目名称:golang-stuff,代码行数:4,代码来源:rtreq.go
示例11: sendMessage
// send a message to the zmq PUB socket
func sendMessage(reqsocket zmq.Socket, e envelope) {
serialized_envelope, _ := json.Marshal(e)
reqsocket.Send(string(serialized_envelope), 0)
// wait for a reply
reqsocket.Recv(0)
}
开发者ID:nikolas,项目名称:windsock,代码行数:7,代码来源:windsock.go
示例12: ping
func (server *server_t) ping(socket *zmq.Socket) {
if time.Now().After(server.ping_at) {
socket.SendMessage(server.endpoint, "PING")
server.ping_at = time.Now().Add(PING_INTERVAL)
}
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:6,代码来源:flcliapi.go
注:本文中的github.com/pebbe/zmq2.Socket类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论