sách gpt4 ai đã đi

"RuntimeError: thread.__init__() không được gọi" khi phân lớp threading.Thread

In lại Tác giả: IT Lao Gao Thời gian cập nhật: 2023-10-28 21:07:04 34 4
mua khóa gpt4 Nike

Tôi cần chạy nhiều luồng của lớp Observer bằng số phần tử trong danh sách dirlist. Khi tôi chạy lệnh python console thì nó hoạt động tốt.

lớp Observer(Thread):
def run(tự):
naptime = random.randint(1,10)
print(self.name + ' đang bắt đầu, chạy trong %ss.' % thời gian ngủ trưa)
time.sleep(thời gian ngủ trưa)
in(self.name + 'xong')

người quan sát = {}
cho d trong dirlist:
người quan sát[d] = Người quan sát()
người quan sát[d].bắt đầu()

Nhưng khi tôi thử thực hiện điều này từ luồng chính được cho là tạo ra luồng quan sát, tôi gặp lỗi.

lớp Master(Chủ đề):
def __init__(bản thân, dirlist):
self.dirlist = danh sách dirlist
def run(tự):
người quan sát = {}
cho d trong dirlist:
người quan sát[d] = Người quan sát()
người quan sát[d].bắt đầu()
trong khi Đúng:
time.sleep(3600)

master_thread = Master(danh sách thư mục)
master_thread.bắt đầu()

Phải Master.bắt đầu Cuộc gọi đưa ra kết quả:

RuntimeError: thread.__init__() không được gọi

Điều này thực sự rất lạ với tôi.
Tôi không hiểu sự khác biệt giữa hai trường hợp này là gì.
Có ai có thể tìm ra giải pháp cho vấn đề của tôi không?

Không hiểu sao việc làm theo lại không tạo ra lỗi và tôi không hiểu tại sao.

lớp Master(Chủ đề):
def set(self, dirlist):
self.dirlist = danh sách dirlist
def run(tự):
người quan sát = {}
cho d trong dirlist:
người quan sát[d] = Người quan sát()
người quan sát[d].bắt đầu()
trong khi Đúng:
time.sleep(3600)

master_thread = Chủ()
master_thread.set(danh sách thư mục)
master_thread.bắt đầu()

1 Câu trả lời

>>> master_thread.bắt đầu()
RuntimeError: thread.__init__() không được gọi

Hãy chắc chắn rằng Chủ.__init__ Gọi Luồng.__init__():

lớp Master(Chủ đề):
def __init__(bản thân, dirlist):
siêu(Chủ, bản thân).__init__()
self.dirlist = danh sách dirlist

Liên quan đến Python - "RuntimeError: thread.__init__() not called" khi phân lớp threading.Thread, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7445742/

34 4 0
Bài viết được đề xuất: Numpy nơi hàm nhiều điều kiện
Bài viết được đề xuất: Android AlertDialog setOnDismissListener cho API dưới 17
Bài viết được đề xuất: Sự khác biệt giữa lemmatization và stemming là gì?
Bài viết được đề xuất: Thêm tiêu đề Expires hoặc Cache-Control vào JSP
CNTT Lao Gao
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com