python两个线程交替执行_多线程在两个线程之间交替使用锁

我试图编写一个程序,用它在两个线程之间交替使用,thread1和thread2。棘手的部分是,我要确保应该开始执行的第一个线程是thread1。这是到目前为止我得到的代码,但它一直向我抛出运行时异常。在lock1.release() error:

release unlocked lock

然而,在我看来,lock1并不是一个正在释放的解锁锁!在

这是我目前掌握的密码class Client:

#member variables

def sendFile(self,lock1,lock2):

sent = 0

while (i

if(sent!=0):

lock2.acquire()

BadNet.transmit(self.clientSocket,message,self.serverIP,self.serverPort)

lock1.release()

sent+=1

self.clientSocket.close()

def receiveAck(self,lock1,lock2):

print "\n Entered ack !"

lock1.acquire()

ack, serverAddress = self.clientSocket.recvfrom(self.buf)

lock2.release()

if __name__ == "__main__":

lock1 = Lock()

lock2 = Lock()

client = Client();

client.readFile();

thread1 = Thread(target = client.sendFile, args=[lock1,lock2])

thread2 = Thread(target = client.receiveAck, args=[lock1,lock2])

thread1.start()

thread2.start()

thread1.join()

thread2.join()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值