zmq.Poller在Python中未收到任何消息

时间:2019-05-04 01:29:28

标签: python zeromq

这是我用来接收zmq消息的代码:

poller = zmq.Poller()
for socket, event in poller.poll(0):
    if socket is my_sock:
        my_sock = messaging.recv_one(socket).my_data
print(my_sock.status)

它可以在我正在处理的项目中的其他文件中使用,但是在此特定文件中它什么也没收到。我尝试将打印语句放在for循环中,但它根本无法打印任何内容。为什么这是任何提示?谢谢

1 个答案:

答案 0 :(得分:0)

从轮询器获得套接字后,我无法正确调用数据。

我用的是

    if self.player.vel.y > 0:
        hits = pg.sprite.spritecollide(self.player, self.platforms, False)
        if hits:
            lowest = hits[0]
            for hit in hits:
                if hit.rect.bottom > lowest.rect.bottom:
                    lowest = hit

                    self.player.vel.x = 0
                if self.player.pos.y < lowest.rect.bottom:
                    self.player.pos.y = lowest.rect.top+1
                    self.player.vel.y = 0
                    self.player.jumping = False

我需要打的电话

my_sock.status

我只是忘了调用在my_sock.MyStruct.status 中实例化变量的结构的名称:

log.capnp