我从Stackless Python开始,所以对我来说这是一个全新的令人惊叹的世界。我通常使用常规线程,它们通常具有线程本地存储( Thread-local storage,TLS),当您不需要与其他线程共享内存时,这是一个非常有用的功能。
所以,我想知道Stackless Python是否有类似的东西:一种存储给定微线程的本地内存( python对象)的方法。这有可能吗?
提前谢谢。-f
发布于 2011-09-21 03:00:55
Solution1:可以使用当前的微线程对象(通过调用stackless.getcurrent()检索)在无堆栈/greenlet中模拟TLS,以存储额外的数据。
Solution2:如果微线程不支持添加额外的字段,那么您可以拥有一个全局WeakKeyDictionary实例,该实例将微线程作为弱引用键,值表示您的TLS。
https://stackoverflow.com/questions/6193826
复制相似问题