Live data from Hacker News

Set Timeout for any method in C#

kossovsky.net

1–6 of 6 posts

Re: Set Timeout for any method in C#

#2
It doesn't abort the operation, though. Just leaves it running in the background.

Canceling arbitrary operations is a bit of a hard problem. Automatic garbage collection helps a little, but even so, handles and locks would be left open for an indeterminate length of time.

Re: Set Timeout for any method in C#

#6
post #4

Why not use Threads and communicate via a flag or callback?

callback is not good enough, it has to be a synchronous operation with ability to stop after specified number of milliseconds

Sorry I am still not understanding the functionality you are expecting. If it has to be synchronous, it means that the caller is interested in the result. However, the caller can stop after a specified timeout and continue, which means that getting the result is not absolutely critical to the caller's functionality.

So then why is callback not an option? After all, it is the same as setting the timeout to zero and getting interrupted (or polling) at some point in the future.