I actually do know that Timeout.InfiniteTimespan
does not exist in .NET 4.0.
Noticed, there's also Timeout.Infinite
which does exist in .NET 4.0
I am calling those two methods:
// the Change-Method
public bool Change(
TimeSpan dueTime,
TimeSpan period
)
// the Constructor of Timer
public Timer(
TimerCallback callback,
Object state,
TimeSpan dueTime,
TimeSpan period
)
in some cases, the dueTime
Parameter needs to be infinite, which means the Event is not fired. I know I could simply use an other overload, but I feel like something has to be more simple.
I already tried using new TimeSpan(0, 0, -1)
or new TimeSpan(-1)
as dueTime. *But that throws an ArgumentOutOfRangeException
pointing to the dueTime
Parameter.
Is it somehow possible to create a literal working like the Timeout.InfiniteTimespan
from .NET 4.5 ?
TimeOut.InfiniteTimeSpan
in TimeOut
class is defined as:
public static readonly TimeSpan InfiniteTimeSpan = new TimeSpan(0, 0, 0, 0, Timeout.Infinite);
Where Timeout.Infinite
is set to -1
,so it is passing -1
value for milliseconds part.
You can do:
TimeSpan InfiniteTimeSpan = new TimeSpan(0, 0, 0, 0, -1);
Infinite timespan is nothing but TimeSpan
with milliseconds set to -1
So, you can just do
TimeSpan infinite = TimeSpan.FromMilliseconds(-1);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With