timedwait
timedwait(testcb::Function, secs::Float64; pollint::Float64=0.1)
Waits till testcb returns true or for secs seconds, whichever is earlier. testcb is polled every pollint seconds.
Examples
In the Julia programming language, the function timedwait(testcb::Function, secs::Float64; pollint::Float64=0.1) is used to wait until the testcb function returns true or for a specified number of seconds, whichever is earlier. The testcb function is polled every pollint seconds.
julia> function test_condition()
return false
end
julia> timedwait(test_condition, 5.0; pollint=0.5)
false
In this example, the test_condition function always returns false. The timedwait function waits for a maximum of 5.0 seconds and polls the test_condition function every 0.5 seconds. Since test_condition never returns true, the timedwait function returns false after the specified timeout.
julia> function test_condition()
return true
end
julia> timedwait(test_condition, 10.0; pollint=2.0)
true
In this example, the test_condition function always returns true. The timedwait function waits for a maximum of 10.0 seconds and polls the test_condition function every 2.0 seconds. Since test_condition returns true immediately, the timedwait function returns true without waiting for the full timeout duration.
Common mistake example:
julia> function test_condition()
return "true"
end
julia> timedwait(test_condition, 3.0; pollint=0.2)
ERROR: MethodError: no method matching convert(::Type{Bool}, ::String)
In this example, the test_condition function returns a string "true" instead of a boolean value. The timedwait function expects the testcb function to return a boolean value. Make sure the testcb function returns either true or false to avoid such errors.
See Also
:@time, :@timed, :@timev, now, sleep, tic, time, timedwait, Timer, time_ns, toc, toq,User Contributed Notes
Add a Note
The format of note supported is markdown, use triple backtick to start and end a code block.