[Python-3000] PEP 3121 implemented

Talin talin at acm.org
Thu Jun 12 08:51:39 CEST 2008


Martin v. Löwis wrote:
> Third, once you managed to truly separate interpreters, you *will*
> have to marshal objects across interpreters, as there won't be any
> shared ones. It's in the same address space, but you still would
> have to do marshalling, or else you might introduce sharing again.

I saw a talk today in which the presenter was talking about "guaranteed 
transfer of ownership" enforced by the language runtime. Essentially, it 
was a technique to allow a data structure to be passed from one thread 
to another, with a guarantee that there would be no heap pointers under 
control of the old thread pointing to anywhere in the data structure. 
When ownership is transferred, the old thread loses all visibility 
within the data structure, and the new thread now gains visibility of 
the structure. This was used to implement a non-copying message passing 
framework.

(Not suggesting this for Python, just thought it was interesting.)

-- Talin



More information about the Python-3000 mailing list