只是让我的头围绕扭曲,穿线,无堆叠等等,并会欣赏一些高级别的建议。
假设我有远程客户端1和2,通过浏览器页面中运行的websocket连接。这是理想的目标:
for cl in (1,2):
guess[cl] = show(cl, choice("Pick a number:", range(1,11)))
checkpoint()
if guess[1] == guess[2]:
show((1,2), display("You picked the same number!"))
忽略show
,choice
和display
的机制,重点是我希望show
调用是异步的。每个客户都会看到选择。代码在checkpoint()
等待所有线程(或其他)重新加入。
即使它们涉及重写源代码等毛茸茸的东西,我也会对听到答案感兴趣。我也对不那么多毛茸茸的答案感兴趣,这些答案涉及在语法上有所妥协。
答案 0 :(得分:1)
代码最简单的解决方案是使用支持远程procdure调用(RPC)的Autobahn这样的框架。这意味着您可以在浏览器中调用一些JavaScript并等待结果。
如果要调用两个客户端,则必须使用线程。
您也可以手动执行此操作。该方法的工作原理如下:
show()
。show()
需要在全局dict
show()
必须将此ID发送给客户dict
中删除回调并使用答案调用它您可以使用yield
简化代码,但理解背后的理论有点复杂:What does the "yield" keyword do in Python?和coroutines
答案 1 :(得分:0)