Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 6 của 6
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    làm sao để copy một file với nhiều thread để tăng tốc độ?

    các bác cho e hỏi, e muốn thực hiện copy 1 file với nhiều thread chạy một lúc thì làm thế nào ạ?
    tức là bây giờ e dùng nhiều thread để copy, mỗi thread sẽ copy 1 phần của file và sau đó sẽ copy ra một file mới tương tự ạ.
    các bác chỉ e với [IMG]images/smilies/17.gif[/IMG]

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Theo mình nghĩ việc ghi dữ liệu cho một file phải thực hiện ghi tuần tự, nếu xây dựng nhiều thread để copy(đọc và ghi) thì cũng không nhanh hơn được, nếu không xử lý tốt có thể gây sai lệch về nội dung file nữa [IMG]images/smilies/smile.png[/IMG]

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Nếu là được thì Microsoft đã làm rồi. Mếu muốn nhanh hơn thì tăng bộ đệm khi sao chép, tất nhiên là nó sẽ chiếm nhiều RAM hơn khi tăng bộ đệm.

    Đa luồng thì như @vandon89 đã nói, chỉ làm cho phức tạp thêm, và tệ hơn có thể làm sai lệch dữ liệu.

    Đa luồng (và không đồng bộ) thì thích hợp làm những việc gì không tuần tự. Việc sao chép tập tin đòi hỏi tuần tự trước sau (của dữ liêu/byte/bit) nên không thể đa luồng được.

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Chia nhỏ data thành gói rồi tải về ---> cái này chỉ giải quyết cho vấn đề dữ liệu chia sẻ qua internet (nhiều client truy xuất đến data chung, băng thông mạng bị hạn chế, bảo mật dữ liệu).
    Còn việc sao chép trên local chỉ phụ thuộc vào tốc độ đọc, ghi của memory, kích thước và số lượng file data -- > đa luồng là không cần thiết

  5. #5
    Việc này không những không tăng tốc độ mà còn có thể làm giảm tốc độ, với thiết bị ghi là đĩa cứng. Bởi vì bộ phận quản lý I/O nếu làm việc không tốt thì có thể sẽ phải liên tục di chuyển đầu đọc đến các vị trí tương ứng với các thread khác nhau.
    Nếu là ghi vào nhiều đĩa (kiểu RAID 0) thì OK.

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    mới nghe lần đầu ... cái dzụ này ... không nhanh mà còn bị mất data nữa.

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •