Do threads 'end' themselves using core.thread?
Alex Horvat
alexh at gmail.com
Mon Jul 22 10:25:20 PDT 2013
On Monday, 22 July 2013 at 16:58:00 UTC, Sean Kelly wrote:
> On Jul 22, 2013, at 9:45 AM, "Alex Horvat" <alexh at gmail.com>
> wrote:
>
>>> ....
>>> When a detached thread terminates, its resources are auto-
>>> matically released back to the system:"
>>
>> Sounds like I can call Thread.getThis().thread_detachThis()
>> from within DelayedHideTitle() and that will make the thread
>> detached and therefore it will destroy itself properly.
>
> Only call thread_detachThis() if you initialized the thread
> object via thread_attachThis(). Otherwise just discard the
> reference and let it clean itself up. The reason for the "do
> not delete" restriction is because the thread objects are
> tracked internally by the GC, and they must remain in a correct
> state until the GC has recognized that they have terminated.
Thanks, sounds like I can just do this and the thread will clean
itself up:
Thread TitleHider = new Thread(&DelayedHideTitle);
TitleHider.start();
TitleHider = null;
More information about the Digitalmars-d-learn
mailing list