ĐA LUỒNG (Multithreading)

22 141 0
ĐA LUỒNG (Multithreading)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Định nghĩa một luồng (thread)  Mô tả đa luồng  Tạo và quản lý luồng  Hiểu được vòng đời của luồng  Mô tả một luồng hiểm (daemon thread)  Giải thích thiết lập các luồng ưu tiên như thế nào  Giải thích được sự cần thiết của sự đồng bộ  Hiểu được cách áp dụng vào các từ khoá đồng bộ như thế nào (how to apply synchronized keywords)  Liệt kê những điểm yếu của sự đồng bộ  Giải thích vai trò của các phương thức wait() (đợi), notify() (thông báo) và notifyAll().  Mô tả một điềuĐịnh nghĩa một luồng (thread)  Mô tả đa luồng  Tạo và quản lý luồng  Hiểu được vòng đời của luồng  Mô tả một luồng hiểm (daemon thread)  Giải thích thiết lập các luồng ưu tiên như thế nào  Giải thích được sự cần thiết của sự đồng bộ  Hiểu được cách áp dụng vào các từ khoá đồng bộ như thế nào (how to apply synchronized keywords)  Liệt kê những điểm yếu của sự đồng bộ  Giải thích vai trò của các phương thức wait() (đợi), notify() (thông báo) và notifyAll().  Mô tả một điềuĐịnh nghĩa một luồng (thread)  Mô tả đa luồng  Tạo và quản lý luồng  Hiểu được vòng đời của luồng  Mô tả một luồng hiểm (daemon thread)  Giải thích thiết lập các luồng ưu tiên như thế nào  Giải thích được sự cần thiết của sự đồng bộ  Hiểu được cách áp dụng vào các từ khoá đồng bộ như thế nào (how to apply synchronized keywords)  Liệt kê những điểm yếu của sự đồng bộ  Giải thích vai trò của các phương thức wait() (đợi), notify() (thông báo) và notifyAll().  Mô tả một điều

Chương ĐA LUỒNG (Multithreading) Mục tiêu: Sau kết thúc chương này, bạn có thể:  Định nghĩa luồng (thread)  Mô tả đa luồng  Tạo quản lý luồng  Hiểu vòng đời luồng  Mô tả luồng hiểm (daemon thread)  Giải thích thiết lập luồng ưu tiên  Giải thích cần thiết đồng  Hiểu cách áp dụng vào từ khoá đồng (how to apply synchronized keywords)  Liệt kê điểm yếu đồng  Giải thích vai trò phương thức wait() (đợi), notify() (thông báo) notifyAll()  Mô tả điều kiện bế tắc (deadlock condition) 8.1 Giới thiệu Một luồng thuộc tính Java Nó đơn vị nhỏ đoạn mã thi hành mà thực công việc riêng biệt Ngôn ngữ Java máy ảo Java hai hệ thống đươc phân luồng 8.2 Đa luồng Java hổ trợ đa luồng, mà có khả làm việc với nhiều luồng Một ứng dụng bao hàm nhiều luồng Mỗi luồng đăng ký công việc riêng biệt, mà chúng thực thi đồng thời với luồng khác Đa luồng giữ thời gian nhàn rỗi hệ thống thành nhỏ Điều cho phép bạn viết chương trình có hiệu cao với tận dụng CPU tối đa Mỗi phần chương trình gọi luồng, luồng định nghĩa đường dẫn khác thực Đây thiết kế chuyên dùng đa nhiệm Trong đa nhiệm, nhiều chương chương trình chạy đồng thời, chương trình có luồng Một vi xử lý thực thi tất chương trình Cho dù xuất mà chương trình thực thi đồng thời, thực tế vi xử lý nhảy qua lại tiến trình 8.3 Tạo quản lý luồng Khi chương trình Java thực thi, luồng ln ln thực Đây nguyên nhân quan trọng luồng chính:  Các luồng tạo từ  Nó luồng cuối kết thúc việc thực Trong chốc lát luồng ngừng thực thi, chương trình bị chấm dứt Cho dù luồng tạo cách tự động với chương trình thực thi, điều khiển thông qua luồng đối tượng Các luồng tạo từ hai đường: Đa luồng (Multithreading) 15  Trình bày lớp lớp lớp luồng, nơi mà phương thức run() lớp luồng cần ghi đè Lấy ví dụ: Class Mydemo extends Thread { //Class definition public void run() { //thực thi } }  Trình bày lớp mà lớp thực lớp Runnable Rồi định nghĩa phương thức run() Class Mydemo implements Runnable { //Class definition public void run() { //thực thi } } Chương trình 8.1 điều khiển luồng Chương trình 8.1 import java.io.*; public class Mythread extends Thread{ /** * Mythread constructor comment */ public static void main(String args[]){ Thread t = Thread.currentThread(); System.out.println("The current Thread is :" + t); t.setName("MyJavaThread"); System.out.println("The thread is now named: " + t); try{ for(int i = 0; i

Ngày đăng: 05/06/2018, 21:55

Từ khóa liên quan

Mục lục

  • 8.1 Giới thiệu

  • 8.2 Đa luồng

  • 8.3 Tạo và quản lý luồng

  • 8.4 Vòng đời của Luồng

  • 8.5 Phạm vi của luồng và các phương thức của lớp luồng

  • 8.6 Thời gian biểu luồng

  • 8.7 Luồng hiểm

  • 8.8 Đa luồng với Applets

  • 8.9 Nhóm luồng

  • 8.10 Sự đồng bộ luồng

  • 8.11 Kỹ thuật “wait-notify” (đợi – thông báo)

  • 8.12 Sự bế tắt (Deadlocks)

  • 8.13 Thu dọn “rác” (Garbage collection)

Tài liệu cùng người dùng

Tài liệu liên quan