Đa luồng trong Python
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. Đầu tiên chúng ta hãy tìm hiểu khái niệm về luồng trong kiến trúc máy tính.
Trong máy tính, quá trình này là một phiên bả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:
Dữ liệu liên quan mà chương trình cần (biến, không gian làm việc (work space), bộ đệm (buffers), v.v.
Bối cảnh thực thi của chương trình (Trạng thái của quá trình)
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 thi. Ngoài ra, nó là đơn vị xử lý nhỏ nhất có thể được thực hiện trong một hệ điều hành (Hệ điều hành).
Trong Python, mô-đun phân luồng cung cấp một API rất đơn giản và trực quan để tạo 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 bằng cách sử dụng mô-đun phân luồng:
Để nhập mô-đun phân luồng
Để tạo một luồng mới, chúng ta tạo một đối tượng của lớp Thread. Nó có các đối số sau:
target: hàm được thực thi theo luồng
args: các đối số được truyền cho hàm đích
Để bắt đầu một luồng, chúng ta sử dụng phương thức start của lớp Thread.
Khi các luồng bắt đầu, chương trình hiện tại (bạn có thể coi nó như một luồng chính) cũng tiếp tục thực thi. Để dừng thực hiện chương trình hiện tại cho đến khi một luồng hoàn tất, chúng tôi sử dụng phương thức nối.
Kết quả là, chương trình hiện tại đầu tiên sẽ đợi hoàn thành t1 và sau đó là t2. Sau khi kết thúc, các câu lệnh còn lại của chương trình hiện tại sẽ được thực thi.
output:
Square: 100
Cube: 1000
Done!
Nhận xét
Đăng nhận xét