mirror of
https://github.com/intrepidcs/libicsneo.git
synced 2026-08-05 09:28:40 +02:00
Disk: ExtExtractorDiskReadDriver: Increase timeout for individual read attempts
This commit is contained in:
committed by
Paul Hollinsky
parent
a2cfc50b7c
commit
c2de1dfdf1
@@ -25,9 +25,11 @@ optional<uint64_t> ExtExtractorDiskReadDriver::readLogicalDiskAligned(Communicat
|
|||||||
return nullopt;
|
return nullopt;
|
||||||
|
|
||||||
optional<uint64_t> ret;
|
optional<uint64_t> ret;
|
||||||
|
// timeout loop assuming
|
||||||
|
const auto perAttemptTimeout = std::chrono::milliseconds(500);
|
||||||
while(timeout > std::chrono::milliseconds(0) && !ret.has_value()) {
|
while(timeout > std::chrono::milliseconds(0) && !ret.has_value()) {
|
||||||
auto start = std::chrono::steady_clock::now();
|
auto start = std::chrono::steady_clock::now();
|
||||||
ret = attemptReadLogicalDiskAligned(com, report, pos, into, amount, std::chrono::milliseconds(100));
|
ret = attemptReadLogicalDiskAligned(com, report, pos, into, amount, perAttemptTimeout);
|
||||||
timeout -= std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::steady_clock::now() - start);
|
timeout -= std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::steady_clock::now() - start);
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
|||||||
Reference in New Issue
Block a user