Skip to content

Commit

Permalink
Apply the new patch from Davis (#2929)
Browse files Browse the repository at this point in the history
  • Loading branch information
reunanen committed Mar 10, 2024
1 parent d5909ed commit 1529b69
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions dlib/threads/threads_kernel_1.h
Expand Up @@ -92,16 +92,22 @@ namespace dlib
void wait (
) const
{
std::unique_lock<std::mutex> cs(m.cs, std::defer_lock);
std::unique_lock<std::mutex> cs(m.cs, std::adopt_lock);
cv.wait(cs);
// Make sure we don't actually modify the mutex. Since the calling code will have locked
// it and it should remain locked.
cs.release();
}

bool wait_or_timeout (
unsigned long milliseconds
) const
{
std::unique_lock<std::mutex> cs(m.cs, std::defer_lock);
std::unique_lock<std::mutex> cs(m.cs, std::adopt_lock);
auto status = cv.wait_until(cs, std::chrono::system_clock::now() + std::chrono::milliseconds(milliseconds));
// Make sure we don't actually modify the mutex. Since the calling code will have locked
// it and it should remain locked.
cs.release();
return status == std::cv_status::no_timeout;
}

Expand Down

0 comments on commit 1529b69

Please sign in to comment.