import ctypes as c@c.CFUNCTYPE(None, c.c_int, c.c_int)def callback(a, b): print("foo has finished its job (%d, %d)" % (a.value, b.value))dll.foo(callback, a, b) # assuming a,b are ints
如果你需要
stdcall调用约定,使用
WINFUNCTYPE代替。
注意:如果
foo可以存储稍后要调用的回调,则请确保Python回调处于活动状态(如果使用示例所示的装饰器在全局级别定义了该回调就足够了-
模块在Python中实质上是不朽的除非您尝试明确删除它们)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)