Simple lock

MRAB python at mrabarnett.plus.com
Fri Mar 19 23:38:27 EDT 2010


Gabriel Genellina wrote:
> En 2010年3月19日 23:31:23 -0300, MRAB <python at mrabarnett.plus.com> 
> escribió:
>> moerchendiser2k3 wrote:
>>>> class SetPointer
>>> {
>>> private:
>>> void *ptr;
>>> MY_LOCK lock;
>>> public:
>>> void SetPointer(void *p)
>>> {
>>> Lock(this->lock);
>>> this->ptr = p;
>>> }
>>> 3. You're locking, but never unlocking. The sequence should be: lock, do
>> stuff, unlock.
>> Just FYI: C++ doesn't have try/finally, and such behavior is usually 
> emulated using a local object. When it goes out of scope, it is 
> automatically destroyed, meaning that the object destructor is called. 
> Whatever you would write in a "finally" clause, in C++ goes into a 
> destructor.
>> Of course C++ guys would never say they're "emulating" try/finally, 
> instead they declare RAII as *the* Only and Right Way :)
>Lock() doesn't look like a declaration, but a function call (although
it's been a while since I last did C++!).
In the past I've written some C++ code where try..finally... would've
been useful... *sigh*


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /