A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2004-August/046817.html below:

[Python-Dev] Re: 2.4a2, and @decorators

[Python-Dev] Re: 2.4a2, and @decoratorsKevin Jacobs jacobs at theopalgroup.com
Wed Aug 4 18:35:56 CEST 2004
Phillip J. Eby wrote:

> At 06:09 PM 8/4/04 +0200, Heiko Wundram wrote:
>
>> class x:
>>         synchronized = threading.Synchronizer()
>>
>>         @synchronized
>>         def y(self):
>>                 <do something>
>>
>> When's threading.Synchronizer coming (just a threading.(R)Lock with 
>> an extra
>> __call__ which prepares a method for synchronization with this lock)? I
>> already have some patches which implement module/class/instance 
>> locking using
>> just a simple RLock and the decorator syntax, and I'd gladly sign 
>> over the
>> patches to the PSF. ;)
>
>
> Note that your example, if I understand it correctly, creates a single 
> lock for all instances of class 'x', rather than for individual 
> instances of 'x'.  This is not what I'd normally expect from a 
> 'synchronized' method.


Indeed it would, if implemented as described.  However, one
could use the same syntax and implement a Synchronizer
that implemented locks at the instance level.  Dirty tricks would
be involved, but it is possible.  (If I _ever_ get some free time,
I will take a stab at doing it, too.  Sounds like a good cookbook
recipe)

-Kevin
More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4