X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fc2171bd4c660b8554dae2a1cbf34ff09f3032a6..4179da8a81ee3110e2a8b5615e1a4f8c8b75a16b:/docs/latex/wx/thread.tex?ds=inline diff --git a/docs/latex/wx/thread.tex b/docs/latex/wx/thread.tex index cd4a11cb24..4cf259e208 100644 --- a/docs/latex/wx/thread.tex +++ b/docs/latex/wx/thread.tex @@ -4,7 +4,7 @@ A thread is basically a path of execution through a program. Threads are sometimes called {\it light-weight processes}, but the fundamental difference between threads and processes is that memory spaces of different processes are separated while all threads share the same address space. While it makes it -much easier to share common data between several threads, it also makes much +much easier to share common data between several threads, it also makes it much easier to shoot oneself in the foot, so careful use of synchronization objects such as \helpref{mutexes}{wxmutex} and/or \helpref{critical sections}{wxcriticalsection} is recommended. @@ -26,7 +26,9 @@ heap because the thread will call {\tt delete this;} upon termination. Joinable threads may be created on the stack although more usually they will be created on the heap as well. Don't create global thread objects because they allocate memory in their constructor, which will cause problems for the memory checking -system. +system. Finally, another consequence of the handling of the above is that you +should never delete a detached thread yourself, as this will be done by the +thread itself when it terminates. \wxheading{Derived from} @@ -60,7 +62,7 @@ The possible values for {\it kind} parameters are: \end{twocollist} -\membersection{wxThread::\destruct{wxThread}} +\membersection{wxThread::\destruct{wxThread}}\label{wxthreaddtor} \func{}{\destruct{wxThread}}{\void} @@ -201,7 +203,7 @@ The following priorities are defined: Returns \true if the thread is alive (i.e. started and not terminating). -Note that this function can only be saely used with joinable threads, not +Note that this function can only be safely used with joinable threads, not detached ones as the latter delete themselves and so when the real thread is not alive any longer it is not possible to call this function neither because the wxThread object doesn't exist any more as well.