Chương 4: LẬP TRÌNH ĐA TIỂU TRÌNH
Khoa CNTT
ĐH GTVT TP.HCM
Khoa CNTT (ĐH GTVT TP.HCM) Java Programming 1 / 23
Nội dung
1Giới thiệu
2Lập trình multithread
3Giải quyết tương tranh (xung đột) & Đồng b hóa
Khoa CNTT (ĐH GTVT TP.HCM) Java Programming 2 / 23
Giới thiệu
Concurrency
*y tính ngày này cho phép ta sử dụng một lúc nhiều ng dụng,
chẳng hạn như bạn vừa nghe nhạc, vừa đánh văn bản word, vừa
download nhạc
*Hay thậm chí một ứng dụng đơn cũng thực hiện nhiều task
cùng một thời điểm.
* dụ, trình soạn thảo văn bản word, luôn luôn sẵn sàng đáp
ng các sự kiện về keyboard mouse, vừa phải reformat text
cập nhật lại màn hình.
*Các phần mềm làm những task như vậy gọi phần mềm đồng
bộ.
Khoa CNTT (ĐH GTVT TP.HCM) Java Programming 3 / 23
Multithread
Processes Thread
*Trong một tiến trình (process) thể nhiều threads chạy đồng
thời.
*Các threads chia sẽ cùng một tài nguyên của tiến trình, bao gồm
b nhớ các file, ...
*Điều y làm cho giao tiếp hiệu quả nhưng lại tiềm ẩn bên trong
các vấn đề về xử tranh chấp tài nguyên giữa các threads.
Khoa CNTT (ĐH GTVT TP.HCM) Java Programming 4 / 23
Multithread
Minh họa Multithread
Khoa CNTT (ĐH GTVT TP.HCM) Java Programming 5 / 23