Python线程模块| setprofile()方法与示例

Python threading.setprofile()方法 (Python threading.setprofile() Method)

setprofile() is an inbuilt method of the threading module in Python. It is used to set a profile function for all the threads that are created by the threading module. The func function is passed to sys.profile() for each method.

setprofile()是Python中线程模块的内置方法。 它用于为线程模块创建的所有线程设置配置文件功能。 每个函数的func函数都传递给sys.profile() 。

Module:

模块:

    import threading

Syntax:

句法:

    setprofile(func)

Parameter(s):

参数:

  • func: It is a required parameter, which is passed to sys.setprofile() for each thread. This function is executed before the run() method.

    func :这是必需的参数,该参数传递给每个线程的sys.setprofile()。 该函数在run()方法之前执行。

Return value:

返回值:

The return type of this method is <class 'NoneType'>, it does not return anything. It sets a profile function for all the threads.

此方法的返回类型为<class'NoneType'> ,它不返回任何内容。 它为所有线程设置配置文件功能。

Example:

例:

# Python program to explain the use of 
# setprofile()  method in Threading Module

import time
import threading

def trace_profile(): 
    print("Current thread's profile")
    print("Name:", str(threading.current_thread().getName()))
    print("Thread id:", threading.get_ident())

def thread_1(i):
    time.sleep(5)
    threading.setprofile(trace_profile())
    print("Value by Thread-1:",i)
    print()
    
def thread_2(i):
    threading.setprofile(trace_profile())
    print("Value by Thread-2:",i)
    print()
    
def thread_3(i):
    time.sleep(4)
    threading.setprofile(trace_profile())
    print("Value by Thread-3:",i)
    print()
    
def thread_4(i):
    time.sleep(1)
    threading.setprofile(trace_profile())
    print("Value by Thread-4:",i)
    print()

# Creating sample threads 
threading.setprofile(trace_profile())
thread1 = threading.Thread(target=thread_1, args=(1,))
thread2 = threading.Thread(target=thread_2, args=(2,))
thread3 = threading.Thread(target=thread_3, args=(3,))
thread4 = threading.Thread(target=thread_4, args=(4,))

# Starting the threads
thread1.start()
thread2.start()
thread3.start()
thread4.start()

Output

输出量

Current thread's profile
Name: MainThread
Thread id: 140461120771840
Current thread's profile
Name: Thread-2
Thread id: 140461086283520
Value by Thread-2: 2

Current thread's profile
Name: Thread-4
Thread id: 140461086283520
Value by Thread-4: 4

Current thread's profile
Name: Thread-3
Thread id: 140461077890816
Value by Thread-3: 3

Current thread's profile
Name: Thread-1
Thread id: 140461094676224
Value by Thread-1: 1


翻译自: https://www.includehelp.com/python/threading-setprofile-method-with-example.aspx

很高兴收到您的问题!以下是 Python sys 库常用的50个方法: 1. sys.argv - 获取命令行参数 2. sys.exit() - 退出程序 3. sys.stdin - 用于标准输入流 4. sys.stdout - 用于标准输出流 5. sys.stderr - 用于标准错误流 6. sys.exc_info() - 返回正在处理的异常信息的元组 7. sys.float_info - 返回与浮点数有关的信息 8. sys.getdefaultencoding() - 返回默认编码 9. sys.getfilesystemencoding() - 返回当前操作系统的文件系统编码 10. sys.getsizeof() - 返回对象的大小 11. sys.hexversion - 返回 Python 解释器的版本信息 12. sys.int_info - 返回与整数有关的信息 13. sys.maxsize - 返回最大的整数值 14. sys.modules - 获取当前加载的所有模块 15. sys.path - 获取 Python 模块搜索路径 16. sys.platform - 获取当前操作系统平台 17. sys.version - 获取 Python 解释器的版本信息 18. sys.version_info - 获取 Python 解释器的版本信息元组 19. sys.stdin.readline() - 从标准输入读取一行 20. sys.stdout.write() - 将指定字符串写入标准输出 21. sys.stderr.write() - 将指定字符串写入标准错误 22. sys.setrecursionlimit() - 设置递归调用的最大次数 23. sys.is_finalizing() - 判断 Python 解释器是否处于垃圾回收期间 24. sys.get_asyncgen_hooks() - 获取异步生成器的钩子 25. sys.set_asyncgen_hooks() - 设置异步生成器的钩子 26. sys.get_coroutine_origin_tracking_depth() - 获取协程原始跟踪深度 27. sys.set_coroutine_origin_tracking_depth() - 设置协程原始跟踪深度 28. sys.get_coroutine_wrapper() - 获取协程包装器 29. sys.set_coroutine_wrapper() - 设置协程包装器 30. sys.call_tracing() - 根据指定的跟踪函数执行指定的可调用对象 31. sys.getprofile() - 获取 Python 解释器的当前 profile 函数 32. sys.setprofile() - 设置 Python 解释器的 profile 函数 33. sys.displayhook() - 设置用于打印结果的回调函数 34. sys.getwindowsversion() - 获取当前操作系统的 Windows 版本信息 35. sys.exc_clear() - 清空异常状态 36. sys.flags - Python 解释器的命令行选项 37. sys.getdlopenflags() - 获取当前的动态链接库标记 38. sys.setdlopenflags() - 设置动态链接库标记 39. sys.getallocatedblocks() - 获取当前 Python 解释器使用的内存块数量 40. sys.getwindowsversion() - 获取当前操作系统的 Windows 版本信息 41. sys.displayhook() - 设置用于打印结果的回调函数 42. sys.getrefcount() - 获取对象的引用计数 43. sys._current_frames() - 获取当前线程的堆栈帧 44. sys.thread_info - 返回与线程有关的信息 45. sys.setswitchinterval() - 设置进程上下文切换时间 46. sys.unraisablehook() - 设置处理无法捕获异常的回调函数 47. sys.addaudithook() - 添加一个审计钩子 48. sys.callstats() - 返回 Python 解释器的调用次数 49. sys.call_tracing() - 根据指定的跟踪函数执行指定的可调用对象 50. sys.gettrace() - 获取 Python 解释器的当前跟踪函数 以上就是 Python sys 库常用的50个方法,希望对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值