gpt4 book ai didi

python - 信号量变量如何传递到python中的以下对象?

转载 作者:太空宇宙 更新时间:2023-11-04 03:45:27 25 4
gpt4 key购买 nike

在对这段代码进行了几次调整之后,我将 sem.release() 放到了 Server 对象中,但实际上没有将变量 sem 传递给它。但它工作得很好......似乎无法理解为什么没有为未声明的变量/引用抛出错误

import threading,time

class Server(threading.Thread):

def __init__(self, hostname):
super(Server, self).__init__()
self.__hostname = hostname

def run(self):
print self.__hostname+' left'
time.sleep(5)
print self.__hostname+' back'
sem.release()

#init
sem = threading.BoundedSemaphore(2)
for x in xrange(1,8):
sem.acquire()
Server('thread '+str(x)).start()

最佳答案

在类中访问全局变量没有什么特别的。

x = 3

class xprinter(object):
def __init__(self):
print(x)

xprinter()

输出:

3

关于python - 信号量变量如何传递到python中的以下对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24070080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com