python wait_Python的等效Java函数wait(),notify(),synchronized
我必須在Python 2.7中編寫一個(gè)類,我有一些問題.
我最近來自java背景和學(xué)習(xí)python
如果我必須在java中做,我會(huì)寫這些
public class CommandSender extends Thread {
private boolean isTimeOut;
private boolean running;
private ArrayList
我現(xiàn)在做了什么
class CommandSender(threading.Thread)
def __init__(self):
threading.Thread.__init__(self)
self.waiting_list = []
self.running = False
self.is-time_out = False
self.my_lock = threading.Lock()
def run(self):
self.running = True
with self.my_lock:
while len(self.waiting_list) == 0 and self.running:
# Don't know what I have to do here
while len(self.waiting_list) != 0 and self.running:
# Do my stuff
def send_command(self,cmd):
with self.my_lock:
self.waiting_list.append(cmd)
# Notify ?
def is_time_out(self):
with self.my_lock:
return self.is_rime_out
我為每個(gè)實(shí)例使用一個(gè)鎖,因?yàn)橹挥幸粋€(gè)CommandSender實(shí)例
那么如何進(jìn)行等待/通知過程?我的同步塊是否很好用?
謝謝 !
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python wait_Python的等效Java函数wait(),notify(),synchronized的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot的配置文件加载顺序和
- 下一篇: python 进程编程速成