python threading.current_thread().name和.getName()有什么区别
今天学到python多线程这块,想显示当前线程是主线程还是子线程.网上一搜,有个方法叫
threading.current().name
定海偶然
但是发现,同样的threading.current_thread()后面不仅仅有.name属性,而且还有.getName()方法.但是
这2个写法最后得出的结果却是一样的.
那么,2者区别在哪里呢?
import threading
import time def run(arg):
print("running sub thread...{}".format(threading.current_thread()))
time.sleep(3) if __name__ == "__main__":
t1 = threading.Thread(target=run,args=("t1",))
t1.start()
print("mian Thread...{}".format(threading.current_thread().getName()))
print("mian Thread...{}".format(threading.current_thread().name)) t2 = threading.Thread()
定海偶然
name 是当前线程的属性, getName 是当前线程的方法。
尽管 threading.current_thread().name 和 threading.current_thread().getName() 的结果一样,但是完全不是同一种东西呀, 例如通过 threading.current_thread().name = 'thread_python' 来改变它。
最终演示代码:
import threading
import time def run(arg):
print("running sub thread...{}".format(threading.current_thread()))
threading.current_thread().name="xurui_python"
print("sub1 Thread...{}".format(threading.current_thread().getName()))
print("sub2 Thread...{}".format(threading.current_thread().name))
time.sleep(3) if __name__ == "__main__":
t1 = threading.Thread(target=run,args=("t1",))
t1.start()
print("mian1 Thread...{}".format(threading.current_thread().getName()))
print("mian2 Thread...{}".format(threading.current_thread().name))
演示代码
代码结果:
running sub thread...<Thread(Thread-1, started 23296)>
mian1 Thread...MainThread
mian2 Thread...MainThread
sub1 Thread...xurui_python
sub2 Thread...xurui_python
代码结果
python threading.current_thread().name和.getName()有什么区别的更多相关文章
- Python threading(多线程)
threading模块在较低级别thread模块之上构建更高级别的线程接口. 一.threading模块定义了以下函数和对象: threading.active_count() 等同于threadin ...
- python threading.thread
Thread 是threading模块中最重要的类之一,可以使用它来创建线程.有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法:另一种是创建一个threading.Thread对 ...
- Python学习笔记- Python threading模块
Python threading模块 直接调用 # !/usr/bin/env python # -*- coding:utf-8 -*- import threading import time d ...
- [Python]threading local 线程局部变量小測试
概念 有个概念叫做线程局部变量.一般我们对多线程中的全局变量都会加锁处理,这样的变量是共享变量,每一个线程都能够读写变量,为了保持同步我们会做枷锁处理.可是有些变量初始化以后.我们仅仅想让他们在每一个 ...
- python threading模块的Lock和RLock区别
首先了解这两者是什么. 以下说明参考自python官网 Lock:Lock被称为①原始锁,原始锁是一个②在锁定时不属于特定线程的同步基元组件,它是能用的最低级的同步基元组件.原始锁处于 "锁 ...
- python threading模块使用 以及python多线程操作的实践(使用Queue队列模块)
今天花了近乎一天的时间研究python关于多线程的问题,查看了大量源码 自己也实践了一个生产消费者模型,所以把一天的收获总结一下. 由于GIL(Global Interpreter Lock)锁的关系 ...
- python 进程、线程与协程的区别
进程.线程与协程区别总结 - 1.进程是计算器最小资源分配单位 - 2.线程是CPU调度的最小单位 - 3.进程切换需要的资源很最大,效率很低 - 4.线程切换需要的资源一般,效率一般(当然了在不考虑 ...
- Python协程与Go协程的区别二
写在前面 世界是复杂的,每一种思想都是为了解决某些现实问题而简化成的模型,想解决就得先面对,面对就需要选择角度,角度决定了模型的质量, 喜欢此UP主汤质看本质的哲学科普,其中简洁又不失细节的介绍了人类 ...
- Python join() 方法与os.path.join()的区别
Python join() 方法与os.path.join()的区别 pythonJoinos.path.join 今天工作中用到python的join方法,有点分不太清楚join() 方法与os.p ...
随机推荐
- 常用的排序算法介绍和在JAVA的实现(二)
一.写随笔的原因:本文接上次的常用的排序算法介绍和在JAVA的实现(一) 二.具体的内容: 3.交换排序 交换排序:通过交换元素之间的位置来实现排序. 交换排序又可细分为:冒泡排序,快速排序 (1)冒 ...
- kubeDNS workflow(service registration and discovery)
Service discovery In k8s, we usually will more than make an application instance, and also the corre ...
- Linux禁止root远程登录及修改默认端口
1.1 修改SSHD配置,禁止root远程登录 禁止登录之前先穿甲一个可以远程登录的普通用户,以免造成登录不了的情况 [root@jhkj66 ~]# useradd yw001 #创建用户 [roo ...
- CentOS7 配置NFS(Network File System)及其使用
1. 服务端配置 1.1. 安装NFS yum -y install nfs* 1.2. 查看是否安装了NFS与RPCBIND rpm -qa | grep nfs rpm - ...
- python分别获取虚拟网卡和真实网卡ip
#!/usr/bin/python # -*- coding: utf-8 -*- import commands import socket import fcntl import struct C ...
- Charles中使用Rewrite提高测试效率
上次给大家演示了Charles中通过Map Local功能来提高测试效率,Charles还有另外一个强大的功能,Rewrite,这次也给大家演示一下. Charles中的Rewrite功能非常强大,可 ...
- PAT Basic 1012 数字分类 (20 分)
给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 整除的数字中所有偶数的和: A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(18)|use关键词]
[易学易懂系列|rustlang语言|零基础|快速入门|(18)|use关键词] 实用知识 use关键词 我们今天来讲讲use关键词. 1.简单来说,use是给其他方法或资源定义一个别名,然后调用者, ...
- 前端面试题-BFC(块格式化上下文)
一.BFC 的概念 1.规范解释 块格式化上下文(Block Formatting Context,BFC)是Web页面的可视化CSS渲染的一部分,是布局过程中生成块级盒子的区域,也是浮动元素与其他元 ...
- 从hive中读取数据推送到kafka
由python2.7语言实现的,包也比较旧了. # -*- coding: utf-8 -*- # Version: 1.0.0 # Description: py_Hive2Kafka2kafka ...