我在调用全局级声明的套接字功能时遇到问题。从功能内访问全局套接字时遇到问题
from nanomsg import Socket, PAIR, PUB
s2 = Socket(PAIR)
s2.connect('tcp://127.0.0.1:49234')
s2.send(b'connect')
def myfunc():
global s2
s2.send(b'Got here!')
myfunc()
print('closing socket')
s2.close()
在上面的例子中myfunc()
发送的数据永远不会获取到接收插座。我知道接收套接字的工作原理是收到全局级的.send()
。
- 编 -
只是想补充一点,我的实际应用程序是一个自定义的Alexa技能的烧瓶中,要求网络服务,我已经验证myfunc()
获取调用通过激活相应的Alexa自定义的技术意图。
实际上你是否在任何地方调用myfunc()? – kdopen
是的,我的实际应用程序是一个针对alexa技能的问题Web服务,我已验证“myfunc”实际上正在调用。 –
嗯...只是发现上面的代码工作,如果我这样做是一个独立的脚本。然而,当我尝试用瓶子来做同样的事情时,请求web服务对s2.send()的调用挂在由于触发相应的Alexa自定义技能意图而被调用的函数中。 –