[IronPython] Interlocked methods and IronPython
Dan Eloff
dan.eloff at gmail.com
Fri Nov 14 09:34:39 PST 2008
... sometimes. The reason it seems to work is that python integers are
immutable and the safe count is always zero :) You could assign back
to SafeCount the result of the increment, but the assignment isn't
necessarily safe. I guess these kinds of things either need to be
written in C#, or use a Monitor or Lock as always in Python.
-Dan
On Fri, Nov 14, 2008 at 11:18 AM, Dan Eloff <dan.eloff at gmail.com> wrote:
> I've often wondered if the CLR Interlocked methods work with
> IronPython. It seems that Interlocked.Increment works fine with module
> globals (see attached script.) Whether it works fine in general I
> don't know. Does anybody know anything about this?
>
> -Dan
>
>>ipy interlockedinc.py
> UnsafeCount: -32081
> SafeCount: 0
>
>>ipy interlockedinc.py
> UnsafeCount: -27749
> SafeCount: 0
>
>>ipy interlockedinc.py
> UnsafeCount: -37339
> SafeCount: 0
>
>>ipy interlockedinc.py
> UnsafeCount: -39461
> SafeCount: 0
>
>>ipy interlockedinc.py
> UnsafeCount: 23175
> SafeCount: 0
>
More information about the Users
mailing list