Tôi muốn biết bằng Java:Trong Java nếu một sợi bị giết, điều gì sẽ xảy ra với luồng khác?
- Nếu chủ đề chính đã giết chết điều gì sẽ xảy ra với các chủ đề con khác?
- Nếu chủ đề con bị giết chết, điều gì sẽ xảy ra với anh chị em và chuỗi gốc?
Tôi đọc trong liên kết sau vì các chủ đề chia sẻ không gian địa chỉ, giết chết một chuỗi cũng có thể ảnh hưởng đến chủ đề khác.
Dưới đây là báo giá từ here.
Chủ đề là các quy trình trọng lượng nhẹ chia luồng điều khiển chính thành nhiều luồng và mỗi luồng điều khiển/luồng sẽ thực thi độc lập. Hoạt động của quá trình trong một hệ thống được thể hiện bằng các luồng. Quá trình có nhiều luồng được gọi là đa luồng. Mỗi chủ đề có ID chủ đề riêng của nó (Kiểu số nguyên), đăng ký, bộ đếm chương trình, ngăn xếp, lỗi số. Các luồng có thể giao tiếp bằng bộ nhớ dùng chung trong cùng một tiến trình. Có những ưu điểm khác nhau khi sử dụng các luồng để quản lý và duy trì tính năng phụ của các ứng dụng. Khi chúng ta sử dụng các luồng hơn là ít tài nguyên hệ thống hơn được sử dụng để chuyển ngữ cảnh và tăng thông lượng của ứng dụng. Chủ đề cũng đơn giản hóa cấu trúc của chương trình. Không có cơ chế đặc biệt để giao tiếp giữa các nhiệm vụ. Chủ đề cũng có một số nhược điểm cho các chủ đề ví dụ không thể tái sử dụng vì chúng phụ thuộc vào một quá trình và không thể tách rời khỏi quá trình. Các chủ đề không bị cô lập vì chúng không có không gian địa chỉ riêng của chúng. Nguyên nhân lỗi của luồng có thể giết toàn bộ quá trình hoặc chương trình vì lỗi đó ảnh hưởng đến toàn bộ không gian bộ nhớ của tất cả các chuỗi sử dụng trong quá trình hoặc chương trình đó. Do các tài nguyên được chia sẻ bởi các luồng có trong quá trình này cũng có thể ảnh hưởng đến toàn bộ quá trình hoặc chương trình khi một hư hỏng tài nguyên theo luồng. Để truy cập đọc và ghi đồng thời vào chuỗi bộ nhớ sẽ yêu cầu đồng bộ hóa. Dữ liệu của quá trình có thể dễ dàng bị hỏng bởi luồng thông qua cuộc đua dữ liệu vì tất cả các luồng có trong quá trình này đều có quyền ghi vào cùng một đoạn dữ liệu.
u GYS thể vui lòng cho dù bất cứ điều gì kể lại trong các liên kết ở trên được áp dụng cho java
cảm ơn bạn đã trả lời nhanh. Tôi hav thêm một nghi ngờ về điểm 2. Tôi đọc trong liên kết sau đây kể từ khi chủ đề chia sẻ không gian địa chỉ, giết chết một sợi có thể ảnh hưởng đến chủ đề khác cũng có. Đang chờ phản hồi của bạn http://www.blurtit.com/q236205.html – nantitv
A) Rant là hoàn toàn sai khi nói "* Chủ đề cũng đơn giản hóa cấu trúc của chương trình *", và không có gì nó nói sau đó có thể sửa chữa mà khốn khổ kết án. B) Tôi không nghĩ rằng nó áp dụng cho Java. C) Không giết chủ đề một cách rõ ràng (bằng cách sử dụng Thread.stop). Phương thức Thread.stop không được chấp nhận vì những lý do rất tốt. – aioobe
Chủ đề giúp chương trình quản lý các tác vụ khác nhau trong cùng một thời điểm. Phương thức Thread.stop() không được chấp nhận vì không an toàn (hãy nghĩ xem liệu luồng có quản lý một số dữ liệu quan trọng) hay không. Tốt hơn là dừng nó với một điều kiện boolean thành một vòng lặp while trong phương thức run(). –