01/10/2018, 11:03

Cách sử dụng MultiThreading để load file

Chào các anh/chị/bạn em đang học về thread trong java, và gặp một bài tập, yêu cầu là sử dụng thread để load 1 file lớn khoảng 1Gb, nhưng em chưa biết cách làm như thế nào, nên nhờ các anh/chị/bạn giúp em hướng để code bài này với ạ.

Dark.Hades viết 13:11 ngày 01/10/2018

Bạn học được và hiểu những gì về threading rồi?
Bạn nói không hiểu tức là không hiểu ở đâu, cả bài(muốn tìm code hộ) hay là một ý nào đó(như khoản load file 1GB)

P!nk viết 13:08 ngày 01/10/2018

Mình hiểu cách hoạt động của thread rồi, nhưng mình chưa biết cách áp dụng vào đọc file như thế nào, bạn chỉ cần giải thích cách thread hoạt động ở trong tình huống cụ thể ở đây giúp mình thôi, code mình có thể tự viết.

Dark.Hades viết 13:17 ngày 01/10/2018

Thread load file tương tự những thread khác.

Bạn khởi tạo thread, sau đó tạo 1 function(hoặc lamda) thực hiện việc load file. Sau đó add worker (chính là thread) cho nó thực hiện function đó.
Có thể dùng lock-free để tránh đọc chưa xong mà đã bắt hiển thị

P!nk viết 13:09 ngày 01/10/2018

Mình còn thắc mắc nữa, là nếu sử dụng nhiều thread thì nó đọc không tuần tự, vậy mình nên làm như thế nào để lúc in ra vẫn in đúng tuần tự vậy. cảm ơn nha.

Dark.Hades viết 13:17 ngày 01/10/2018

Mình nêu ở trên rồi mà, bạn dùng kiểu lock-free.
Trong C++ có mutex, java bạn tìm cái tương tự.

P!nk viết 13:12 ngày 01/10/2018

oke để mình kiếm. tks nha

Dark.Hades viết 13:16 ngày 01/10/2018

Có nút thanks kìa bạn.
Hãy hành động, việt nam nói là làm

file 1 gb chứ có phải 1 mb đâu mà load 1 phát hết lên Ram @@

Bài liên quan
0