X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b82827dd43caa489eade15cc02edef7fb79e8c20..24cd6f8250f500e27788c94fb584d453faee923f:/docs/latex/wx/crtslock.tex diff --git a/docs/latex/wx/crtslock.tex b/docs/latex/wx/crtslock.tex index b4212b2577..1bfa41ea9e 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 Set Foo() +{ + // 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. +Destructor leaves the critical section.