X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cc81d32f2bf8c159f3b1bf6ddaf62e6d77720209..8b0f8432d72fc44aa7247ab1c19c04103323feea:/docs/latex/wx/thread.tex?ds=sidebyside diff --git a/docs/latex/wx/thread.tex b/docs/latex/wx/thread.tex index b530b6fa54..400824fd6e 100644 --- a/docs/latex/wx/thread.tex +++ b/docs/latex/wx/thread.tex @@ -11,7 +11,7 @@ such as \helpref{mutexes}{wxmutex} and/or \helpref{critical sections}{wxcritical There are two types of threads in wxWindows: {\it detached} and {\it joinable} ones, just as in the POSIX thread API (but unlike Win32 threads where all threads are joinable). The difference between the two is that only joinable threads -can return a return code - this is returned by the Wait() function. Detached +can return a return code -- this is returned by the Wait() function. Detached threads (the default type) cannot be waited for. You shouldn't hurry to create all the threads joinable, however, because this @@ -47,7 +47,7 @@ None. \func{}{wxThread}{\param{wxThreadKind }{kind = wxTHREAD\_DETACHED}} This constructor creates a new detached (default) or joinable C++ thread object. It -does not create or start execution of the real thread - for this you should +does not create or start execution of the real thread -- for this you should use the \helpref{Create}{wxthreadcreate} and \helpref{Run}{wxthreadrun} methods. The possible values for {\it kind} parameters are: @@ -63,7 +63,7 @@ The possible values for {\it kind} parameters are: \func{}{\destruct{wxThread}}{\void} The destructor frees the resources associated with the thread. Notice that you -should never delete a detached thread - you may only call +should never delete a detached thread -- you may only call \helpref{Delete}{wxthreaddelete} on it or wait until it terminates (and auto destructs) itself. Because the detached threads delete themselves, they can only be allocated on the heap. @@ -107,17 +107,12 @@ until the thread terminates. As it may take a long time, and the message process is not stopped during this function execution, message handlers may be called from inside it! -Delete() may be called for thread in any state: running, paused or even not yet -created. Moreover, it must be called if \helpref{Create}{wxthreadcreate} or -\helpref{Run}{wxthreadrun} failed for a detached thread to free the memory -occupied by the thread object. This cleanup will be done in the destructor for joinable -threads. - -Delete() may be called for a thread in any state: running, paused or even not yet created. Moreover, -it must be called if \helpref{Create}{wxthreadcreate} or \helpref{Run}{wxthreadrun} fail to free -the memory occupied by the thread object. However, you should not call Delete() -on a detached thread which already terminated - doing so will probably result -in a crash because the thread object doesn't exist any more. +Delete() may be called for a thread in any state: running, paused or even not +yet created. Moreover, it must be called if \helpref{Create}{wxthreadcreate} or +\helpref{Run}{wxthreadrun} fail in order to free the memory occupied by the +thread object. However, you should not call Delete() on a detached thread which +already terminated -- doing so will probably result in a crash because the +thread object doesn't exist any more. For detached threads Delete() will also delete the C++ thread object, but it will not do this for joinable ones. @@ -238,7 +233,7 @@ This function can only be called from another thread context, i.e. a thread cannot kill itself. It is also an error to call this function for a thread which is not running or -paused (in the latter case, the thread will be resumed first) - if you do it, +paused (in the latter case, the thread will be resumed first) -- if you do it, a {\tt wxTHREAD\_NOT\_RUNNING} error will be returned. \membersection{wxThread::OnExit}\label{wxthreadonexit} @@ -315,7 +310,7 @@ number of threads that the system tries to schedule to run in parallel. The value of $0$ for {\it level} may be used to set the default one. Returns true on success or false otherwise (for example, if this function is -not implemented for this platform - currently everything except Solaris). +not implemented for this platform -- currently everything except Solaris). \membersection{wxThread::TestDestroy}\label{wxthreadtestdestroy}