Tin học
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình

3 posters

Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình

Bài gửi  HUYNHDUCANHI12A 29/3/2012, 23:43

*Giống nhau:
- Đều có thông tin trạng thái
- Luồng còn được gọi là tiến trình nhẹ
- Nhiều luồng hoặc nhiều tiến trình có thể liên quan đến một chu trình
- Chia sẻ tài nguyên cho nhau, tăng tốc tính toán, đảm bảo tính đơn thể

*Khác nhau:
- Do luồng cùng vận hành trong 1 vùng địa chỉ, vì vậy dễ dùng chung tài nguyên hơn đa tiến trình
- Do luồng chung tài nguyên với luồng cha nên việc tạo lập và chuyển đổi ngữ cảnh cũng nhanh hơn tiến trình
- Lập trình đa luồng thì dễ hơn lập trình đa tiến trình

HUYNHDUCANHI12A

Tổng số bài gửi : 31
Join date : 07/03/2012

Về Đầu Trang Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Re: Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình

Bài gửi  nguyenhuutho 30/3/2012, 23:00

cho mình ví dụ minh họa được không bạn

nguyenhuutho

Tổng số bài gửi : 31
Join date : 09/03/2012

Về Đầu Trang Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Đa Tiến Trình _ Thread

Bài gửi  DangLeHieu(I102C) 4/4/2012, 00:58

Mục tiêu của Thread là để tạo ra nhiều tiểu trình chạy song song với nhau để thực hiện 1 số việc nào đó. Để làm vậy, cần tạo 1 lớp như sau:
1. Implement interface Runnable
2. Extends lớp Thread và overide hàm run().

ví dụ:

class Apple extends Thread {
void run() {}
}

public class test{
public void main(){
Apple a = new Apple();
a.start();
}
}

Lưu ý là: hàm run() chỉ là để chạy tiểu trình sẽ thực hiện song song, còn để gọi nó thì phải xài hàm start(). Còn ko gọi, mà gọi run() trực tiếp thì nó sẽ ko chạy song song mà nó sẽ chạy như 1 hàm bình thường, tức là chỉ có 1 tiểu trình chạy mà thôi chứ ko phải 2.

Ngoài ra, bạn cũng có thể tìm hiểu về hàm join(), sleep(), wait(), notify(), yeild() và có thể là setPriority()...

Mình chỉ biết tí xíu nhiêu đó, hi vọng giúp ích được cho bạn.



DangLeHieu(I102C)

Tổng số bài gửi : 18
Join date : 05/03/2012

Về Đầu Trang Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Đa Tiến Trình _ Thread

Bài gửi  DangLeHieu(I102C) 4/4/2012, 00:59

join(): nếu a gọi b.join() thì khi b thực hiện xong công việc thì a mới chạy tiếp.
wait(): nếu a gọi b.wait() thì a sẽ tạm dừng và đợi cho b khi nào làm xong cái trò gì đó, gọi notify() hay notifyAll() thì a mới chạy tiếp.
notify(): cái này dùng để báo mấy thread khác đang đợi được phép chạy tiếp. Lưu ý là wait() với notify() phải ở trong một khối synchronize mới chịu chạy.
sleep(): nếu a chạy sleep() thì nó sẽ dừng lại bao nhiêu giây rồi chạy tiếp.
yeild(): nếu a gọi lệnh này, nó từ trạng thái đang chạy sẽ bị quánh bật về trạng thái sẵn sàng, dùng lệnh này để cho mấy thread khác có cơ hội chạy. Nhưng nó chỉ có tác dụng với các thread có cùng độ ưu tiên.
setPriority(): chỉ định độ ưu tiên cho một thread. thread có độ ưu tiên cao hơn sẽ được chạy và chiếm cpu nhiều hơn.



DangLeHieu(I102C)

Tổng số bài gửi : 18
Join date : 05/03/2012

Về Đầu Trang Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Multi - Process và Multi - Thread

Bài gửi  DangLeHieu(I102C) 4/4/2012, 01:01

Multi-process thường sẽ "nặng" hơn multi-thread về mặt resource.
Khác nhau chỗ nào: process khác với thread chỗ nào?
Xu hướng: tuỳ nhu cầu hoàn cảnh cụ thể. Multi-process thì chết 1 process thì không ảnh hưởng tới process khác, nhưng sẽ tiêu tốn resource hơn. Multi-thread thì đỡ tốn resource hơn nhưng 1 thread mà có lỡ crash thì cũng có thể làm cả process cha "teo" the

DangLeHieu(I102C)

Tổng số bài gửi : 18
Join date : 05/03/2012

Về Đầu Trang Go down

Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình Empty Re: Những điểm giống và khác nhau giữa Đa Luồng và Đa Tiến Trình

Bài gửi  Sponsored content


Sponsored content


Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết