python wait_Python的等效Java函数wait(),notify(),synchronized

我必须在Python 2.7中编写一个类,我有一些问题.

我最近来自java背景和学习python

如果我必须在java中做,我会写这些

public class CommandSender extends Thread {

private boolean isTimeOut;

private boolean running;

private ArrayList

我现在做了什么

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

我为每个实例使用一个锁,因为只有一个CommandSender实例

那么如何进行等待/通知过程?我的同步块是否很好用?

谢谢 !

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值