Cancelling a stdin.read?
Lass Safin via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Apr 11 07:57:27 PDT 2016
On Monday, 11 April 2016 at 14:53:31 UTC, Adam D. Ruppe wrote:
> On Sunday, 10 April 2016 at 08:29:22 UTC, Lass Safin wrote:
>> Thus, my question is: Is there any way to cancel the read from
>> stdin prematurely from another thread, so that the thread can
>> finish?
>
> What operating system are you on?
>
> I wouldn't be using threads for this at all, you might want to
> reorganize the program to get terminal events sent to the same
> gui event loop so exiting it would exit all of it.
>
> But failing that, canceling an I/O request can be done by
> sending yourself a signal on posix and on Windows there's a
> system API call that one thread can cancel another thread's
> blocking read.
>
> The D library would see these cancels as an error and throw an
> exception. You could catch it or let it kill the thread, since
> you want to exit anyway.
My savior!
I can't put it in one loop, since the window also has some
autonomous features.
More information about the Digitalmars-d-learn
mailing list