📈Thread

Một thread là đơn vị thực thi nhỏ nhất có thể được quản lý bởi hệ điều hành. Process là một nhóm các thread có liên kết, thực thi cùng nhau trên cùng một môi trường và cùng chia sẻ tài nguyên trên đó.

A thread is an execution thread in a program.

Trong java, thread có thể là 1 directory hay thread được thực thi khi program được executed. Mọi program đều có ít nhất 1 thread (Main thread), nó được cung cấp bởi JVM khi bắt đầu execute program. Chúng ta có thể thiểu là Main() method được gọi bởi main thread.

Thread được sử dụng chủ yếu để cải thiện ứng dụng thông qua việc tính toán song song (parallelism). Trên thực tế chỉ có một thread được thực thi tại một thời điểm bởi CPU, nhưng CPU có thể chuyển đổi nhanh chóng giữa các thread để tạo hiệu ứng giống như các thread đang được thực thi song song với nhau.

Multithread

Java chính là một ngôn ngữ lập trình đa phân luồng (multithreaded). Thread kế thừa ý tưởng của đa nhiệm trong các ứng dụng để bạn có thể chia nhỏ các hoạt động riêng biệt bên trong một ứng dụng đơn thành các luồng (thread) riêng lẻ. Mỗi một thread có thể chạy song song riêng biệt với nhau.

Multithread cho phép nhiều task trong program thực thi đồng thời.

1 Trong những đặc trưng mạnh mẽ của java là hỗ trợ sẵn tạo và thực thi multithread, cũng như lock các tài nguyên liên quan để ngăn xung đột.

Multithread giúp tăng hiệu năng và tính tương tác của program.

VD: Trình duyệt web hay các chương trình chơi nhạc là 1 ví dụ điển hình về đa luồng.

+ Khi duyệt 1 trang web, có rất nhiều hình ảnh, CSS, javascript… được tải đồng thời bởi các luồng khác nhau.

+ Khi play nhạc, chúng ta vẫn có thể tương tác được với nút điều khiển như: Play, pause, next, back … vì luồng phát nhạc là luồng riêng biệt với luồng tiếp nhận tương tác của người dùng.

Last updated