pyspark.inheritable_thread_target¶
-
pyspark。
inheritable_thread_target
( f:可调用的 )→可调用的¶ -
返回线程目标包装建议用于PySpark固定线程模式时启用。包装器函数,在调用目标初始线程之前,它继承了特定JVM线程如可继承的属性
InheritableThreadLocal
。同时,注意固定线程模式从Python不关闭连接到JVM线程完成后在Python的一面。这个包装器,Python执行垃圾收集线程实例并关闭连接正确完成JVM线程。
当固定线程模式,它返回原来的
f
。- 参数
-
- f 函数
-
原始线程的目标。
笔记
这个API是实验性的。
重要的是要知道它捕获局部属性而当你装修它
InheritableThread
当线程启动捕获。因此,鼓励来装饰它当你想获取当地的属性。例如,从当前引发局部属性上下文捕获当你定义一个函数,而不是调用:
> > >@inheritable_thread_target…deftarget_func():…通过#你的代码。
如果你有任何更新局部属性之后,它不会反映到火花上下文
target_func ()
。下面的例子模拟JVM线程的行为尽可能:
> > >线程(目标=inheritable_thread_target(target_func))。开始()