【发布时间】:2019-11-26 13:14:12
【问题描述】:
我正在研究电梯计划。当有人按下按钮时,电梯应该停止。
例如:如果电梯到了 11 楼,并且在有人按了 3 楼之间,那么它应该停止。
我尝试了使用多线程的程序,它的工作方式如下:
while(True):
t1= threading.Thread(target=get_input, name='t1')
t2= threading.Thread(target=traverse, name='t2')
t1.start()
time.sleep(5)
traverse()
t2.start()
遍历功能将电梯移动到所需楼层。
简而言之,我实现的想法是 1 个线程接受输入,其他线程一次移动电梯。但是有没有其他方法可以代替线程(尽管这个解决方案有效)?
【问题讨论】:
-
不是一个真正有效的方法,你可以重写它而不添加
Threading函数。 -
@SalmanFarsi 我不知道什么时候从控制台获取输入。因为我不想一次接受所有输入。
-
我不这么认为还有另一个像线程一样简单的库。!
-
分割成两个代码区,一个区会设置一个监听socket,用于电梯呼叫,另一个区会调用已知端口的电梯。将有某种 TCP 握手来编组数据。
标签: python python-3.x multithreading python-2.7 python-multithreading