X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b82827dd43caa489eade15cc02edef7fb79e8c20..461c9b848bebd4748d614c4be882bf1bb6b65a84:/docs/latex/wx/crtslock.tex?ds=sidebyside diff --git a/docs/latex/wx/crtslock.tex b/docs/latex/wx/crtslock.tex index b4212b2577..50bdef73d2 100644 --- a/docs/latex/wx/crtslock.tex +++ b/docs/latex/wx/crtslock.tex @@ -6,10 +6,41 @@ constructor and leaves it in the destructor making it much more difficult to forget to leave a critical section (which, in general, will lead to serious and difficult to debug problems). +Example of using it: + +\begin{verbatim} +void SetFoo() +{ + // gs_critSect is some (global) critical section guarding access to the + // object "foo" + wxCriticalSectionLocker locker(gs_critSect); + + if ( ... ) + { + // do something + ... + + return; + } + + // do something else + ... + + return; +} +\end{verbatim} + +Without wxCriticalSectionLocker, you would need to remember to manually leave +the critical section before each {\tt return}. + \wxheading{Derived from} None. +\wxheading{Include files} + + + \wxheading{See also} \helpref{wxCriticalSection}{wxcriticalsection}, @@ -19,14 +50,14 @@ None. \membersection{wxCriticalSectionLocker::wxCriticalSectionLocker}\label{wxcriticalsectionlockerctor} -\func{}{wxCriticalSectionLocker}{\param{wxCriticalSection *}{criticalsection}} +\func{}{wxCriticalSectionLocker}{\param{wxCriticalSection\& }{criticalsection}} Constructs a wxCriticalSectionLocker object associated with given -criticalsection which must be non NULL and enters it. +{\it criticalsection} and enters it. \membersection{wxCriticalSectionLocker::\destruct{wxCriticalSectionLocker}}\label{wxcriticalsectionlockerdtor} \func{}{\destruct{wxCriticalSectionLocker}}{\void} -Destuctor leaves the criticalsection. +Destuctor leaves the critical section.