我正在使用Python开发一个固有的多线程模块,我想知道它在哪里花费时间.cProfile似乎只是描述主线程.有没有办法分析计算中涉及的所有线程?
我可以实现错误功能,erf,我自己,但我不愿意.是否有一个没有外部依赖项的python包,其中包含此函数的实现?我发现了这个,但这似乎是一些更大的包的一部分(甚至不清楚哪一个!).
我正在实现一个几乎与集合相同的对象,但需要一个额外的实例变量,所以我是内置集合对象的子类.在复制其中一个对象时,确保复制此变量的值的最佳方法是什么?
使用旧的set模块,以下代码完美地运行:
import sets
class Fooset(sets.Set):
def __init__(self, s = []):
sets.Set.__init__(self, s)
if isinstance(s, Fooset):
self.foo = s.foo
else:
self.foo = 'default'
f = Fooset([1,2,4])
f.foo = 'bar'
assert( (f | f).foo == 'bar')
Run Code Online (Sandbox Code Playgroud)
但是使用内置的设置模块不起作用.
我能看到的唯一解决方案是覆盖返回复制的set对象的每个方法...在这种情况下,我可能不会打扰子类化set对象.当然有一种标准的方法可以做到这一点?
(为了澄清,下面的代码并不能正常工作(断言失败):
class Fooset(set):
def __init__(self, s = []):
set.__init__(self, s)
if isinstance(s, Fooset):
self.foo = s.foo
else:
self.foo = 'default'
f = Fooset([1,2,4])
f.foo = 'bar'
assert( (f | f).foo == 'bar')
Run Code Online (Sandbox Code Playgroud)
)