Chủ đề Python không in
Bài viết này trình bày những kiến thức cơ bản về đa luồng trong ngôn ngữ lập trình Python. Cũng giống như đa xử lý, đa luồng là một cách để đạt được đa nhiệm. Trong đa luồng, khái niệm luồng được sử dụng. Trước tiên chúng ta hãy hiểu khái niệm về luồng trong kiến trúc máy tính Show Chủ đề Trong điện toán, một quy trình là một thể hiện của một chương trình máy tính đang được thực thi. Bất kỳ quy trình nào cũng có 3 thành phần cơ bản
Một luồng là một thực thể trong một quy trình có thể được lên lịch để thực hiện. Ngoài ra, nó là đơn vị xử lý nhỏ nhất có thể được thực hiện trong HĐH (Hệ điều hành). Nói một cách đơn giản, một luồng là một chuỗi các hướng dẫn như vậy trong một chương trình có thể được thực thi độc lập với mã khác. Để đơn giản, bạn có thể giả sử rằng một luồng chỉ đơn giản là một tập hợp con của một quy trình. Một luồng chứa tất cả thông tin này trong Khối điều khiển luồng (TCB)
Xem xét sơ đồ bên dưới để hiểu mối quan hệ giữa quy trình và luồng của nó đa luồng. Nhiều luồng có thể tồn tại trong một quy trình trong đó
Xem xét sơ đồ bên dưới để hiểu cách tồn tại nhiều luồng trong bộ nhớ Đa luồng được định nghĩa là khả năng bộ xử lý thực thi đồng thời nhiều luồng
Xem xét sơ đồ bên dưới, trong đó một quy trình chứa hai luồng đang hoạt động. Đa luồng trong PythonTrong Python, mô-đun luồng cung cấp một API rất đơn giản và trực quan để sinh ra nhiều luồng trong một chương trình. Chúng ta hãy xem xét một ví dụ đơn giản sử dụng mô-đun phân luồng. Python3import threading72 import threading73 import threading0 import threading1 import threading2
import threading3 import threading4 import threading5 import threading6 import threading5 import threading8 import threading9 import threading00 import threading01 import threading02 import threading03 import threading04 import threading05 import threading04 import threading07
import threading3 import threading09 import threading5 import threading11 import threading5 import threading8 import threading9 import threading15 import threading01 import threading02 import threading03 import threading04 import threading07
import threading11 import threading12____313 import threading13 import threading15 import threading16 import threading5 import threading18 import threading5 import threading00 import threading13 import threading02 import threading13 import threading04 import threading13 import threading9 import threading07 import threading08 import threading5 import threading00 import threading13 import threading02 import threading13 import threading04 import threading13 import threading9 import threading07 import threading08
import threading5 import threading00 import threading5 import threading02 import threading5 import threading04 import threading5 import threading06
import threading5 import threading08 import threading5 import threading720 import threading5 import threading722 import threading5 import threading724
import threading5 import threading726 import threading5 import threading8____09____1730 import threading731 import threading6 Hãy để chúng tôi cố gắng hiểu đoạn mã trên
import threading
import threading0
import threading1
Xem xét sơ đồ bên dưới để hiểu rõ hơn về cách thức hoạt động của chương trình trên. Hãy xem xét chương trình python được cung cấp bên dưới, trong đó chúng tôi in tên luồng và quy trình tương ứng cho từng tác vụ. Python3import threading72 import threading73 import threading1 import threading2 import threading1 import threading737
import threading3 import threading739 import threading5 import threading8 import threading02 import threading03 import threading04 import threading02 import threading06 import threading5 import threading8 import threading09 import threading10 import threading11 import threading03 import threading13 import threading02 import threading15
import threading3 import threading17 import threading5 import threading8 import threading02 import threading21 import threading04 import threading02 import threading06 import threading5 import threading8 import threading09 import threading10 import threading11 import threading21 import threading13 import threading02 import threading15
import threading11 import threading12____313 import threading13 import threading38
import threading5 import threading40 import threading5 import threading8 import threading09 import threading10 import threading45 import threading02 import threading15
import threading5 import threading49 import threading5 import threading8 import threading52 import threading02 import threading06
import threading5 import threading56 import threading5 import threading00 import threading13 import threading02 import threading13 import threading62 import threading13 import threading64 import threading731 import threading5 import threading00 import threading13 import threading02 import threading13 import threading71 import threading13 import threading73 import threading74
import threading5 import threading76 import threading5 import threading02 import threading5 import threading06
import threading5 import threading82 import threading5 import threading720 import threading5 import threading724 import threading1 Hãy để chúng tôi cố gắng hiểu đoạn mã trên
import threading0
import threading0
import threading0 Sơ đồ đưa ra dưới đây làm rõ khái niệm trên
Bài viết này được đóng góp bởi Nikhil Kumar. Nếu bạn thích GeeksforGeeks và muốn đóng góp, bạn cũng có thể viết một bài báo bằng cách sử dụng write. chuyên viên máy tính. org hoặc gửi bài viết của bạn tới review-team@geeksforgeeks. tổ chức. Xem bài viết của bạn xuất hiện trên trang chính của GeeksforGeeks và trợ giúp các Geeks khác Vui lòng viết bình luận nếu bạn thấy bất cứ điều gì không chính xác hoặc bạn muốn chia sẻ thêm thông tin về chủ đề thảo luận ở trên Tại sao Python không tốt cho luồng?Python không hỗ trợ đa luồng vì Python trên trình thông dịch Cpython không hỗ trợ thực thi đa lõi thực sự thông qua đa luồng .
Python có chờ chủ đề kết thúc không?Khi chạy chương trình, bạn sẽ nhận thấy rằng có một khoảng dừng (khoảng 2 giây) sau khi __main__ đã in thông báo tất cả đã xong và trước khi luồng kết thúc< . Việc tạm dừng này là Python đang chờ chuỗi không phải daemon hoàn thành. . This pause is Python waiting for the non-daemonic thread to complete.
Là chủ đề inVí dụ: chức năng in không an toàn cho luồng
Hạn chế chính của luồng với Python là gì?Máy ảo Python không phải là trình thông dịch an toàn cho luồng , nghĩa là trình thông dịch chỉ có thể thực thi một luồng tại bất kỳ thời điểm nào. Giới hạn này được thực thi bởi Khóa thông dịch viên toàn cầu Python (GIL), về cơ bản giới hạn một chuỗi Python chạy tại một thời điểm. |