Đề xuất của tôi là:Di chuyển các truy vấn cơ sở dữ liệu ra bên ngoài vòng lặp và khóa quyền truy cập để bạn không thực hiện các truy vấn cơ sở dữ liệu song song. Tôi nghĩ rằng điều đó cũng sẽ tăng tốc mọi thứ, vì bạn sẽ không có quyền truy cập đĩa song song trong khi vẫn có thể xử lý song song.
Có nghĩa là (mã giả) db =kết nối với databasethreadlock =lock ();
truy vấn parfor {threadlock.lockresult =db (lấy tất cả dữ liệu ở đây, vì bạn không thể xử lý trong khi tải mà không khóa cơ sở dữ liệu) luồng.unlockprocess dữ liệu kết quả (hiện chỉ là dữ liệu chứ không phải đối tượng sql).}