- 浏览: 2653628 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
1.设置为守护线程之后主线程退出后守护线程也会随着退出。
2.子线程如果主线程join的话那么在子线程等待中主线程也会等着直到子线程退出后才能往下执行。
3.可以通过join(timeout)来实现退出,但是如果子线程不是守护线程的话那么主线程时间到了退出了,子线程还在执行,这样就出现子线程卡死了,但是主线程不知道,因而引入守护线程。
configIpThread = ConfigIpThread(self, ipDic, cloudName, username, password)
configIpThread.setDaemon(True)
configIpThread.start()
configIpThread.join(timeout)
等时间结束后守护线程也会退出。
参考:
http://www.ibm.com/developerworks/cn/aix/library/au-threadingpython/
2.子线程如果主线程join的话那么在子线程等待中主线程也会等着直到子线程退出后才能往下执行。
3.可以通过join(timeout)来实现退出,但是如果子线程不是守护线程的话那么主线程时间到了退出了,子线程还在执行,这样就出现子线程卡死了,但是主线程不知道,因而引入守护线程。
configIpThread = ConfigIpThread(self, ipDic, cloudName, username, password)
configIpThread.setDaemon(True)
configIpThread.start()
configIpThread.join(timeout)
等时间结束后守护线程也会退出。
参考:
http://www.ibm.com/developerworks/cn/aix/library/au-threadingpython/
发表评论
-
python读取图片exif信息
2014-11-06 10:53 2400f = open("/home/admin/tlo ... -
Python程序的执行原理
2014-04-14 15:44 17231. 过程概述 Python先把代码(.py文件)编译成字 ... -
如何创建一个短链服务
2013-12-26 16:23 0参考: http://stackoverflow.com ... -
python 解析命令参数(argument)组件argparse
2013-12-11 17:35 1401参考: http://youngsterxyf.githu ... -
pyhon命令行工具optparse
2013-11-10 16:27 1028使用python optparse 可以创建命令行工具,下面 ... -
Python在豆瓣的应用
2013-10-21 10:46 1194Python在豆瓣的应用,hongqiangning分享 ... -
用python爬虫抓站的一些技巧总结
2013-10-10 14:12 1681学用python也有3个多月了,用得最多的还是各类爬虫 ... -
python小技巧
2013-10-10 11:50 7341. 声明长度256的数组 a=[0]*256 ... -
使用tesseract-ocr破解网站验证码
2013-10-09 10:25 1212原文:使用tesseract-ocr破解网站验证码 ... -
和豆瓣CMGS交流
2013-06-20 17:36 5838蒋云鹏: 在?CMGS: 在蒋 ... -
python乱码问题('ascii' codec can't encode character u'\u4e2d' in position 0)
2013-05-20 19:03 4245>>> k = u'中' >> ... -
python shell 交互模式
2013-04-28 22:17 1628python 通过code模块可以很容易的进入交互模式: ... -
jython和gunicorn性能测试对比
2013-04-13 13:03 1294helloworld,笔记本上: gunicorn ... -
python的mysql客户端-MySQLdb
2013-04-04 10:13 1159平时的主要编程语言是Java,开发时也主要用Mysql,经常 ... -
Python几种并发实现方案的性能比较
2013-03-18 21:14 2956原文:http://www.elias.cn/P ... -
python汉字和Unicode码(utf-8)之间的转换(Pack/Unpack)
2013-03-18 21:13 1643保证你要转换的字符串编码为UTF8,如果不是,请iconv ... -
python反序列化的坑
2013-01-06 18:06 1278今天遇到python一个坑,调用memcached的get_m ... -
sqlalchemy connection pool.py 源代码
2012-12-29 22:58 2237把 sqlalchemy pool源代码copy下来,有空看看 ... -
SQLAlchemy简单介绍
2012-12-28 22:41 0文档参考:http://docs.sqlalchemy.org ... -
pymysql简单使用
2012-12-28 12:38 2118import pymysql conn = pymysq ...
相关推荐
在Python编程中,线程是并发执行任务的基本单位,而守护线程(Daemon Thread)是一种特殊类型的线程,它的主要特点是当所有非守护线程结束时,即使守护线程还在运行,Python解释器也会强制退出。了解并正确使用守护...
Python中的守护进程(daemon process)、守护线程(daemon thread)以及如何实现守护和非守护的并行处理是多任务编程中的重要概念。在Python中,这些功能主要通过`multiprocessing`和`threading`模块来实现。 守护...
例如,可以使用`setDaemon(True)`将线程标记为守护线程,这意味着当所有非守护线程结束时,该线程也会被终止。另外,`isAlive()`方法可以用来检查线程是否正在运行。 #### 线程同步与锁 在多线程编程中,为了避免...
`threading`库中的`Thread`类不仅包括了`thread`库的基本功能,还增加了命名、守护线程、优先级等功能。此外,`threading`库还提供了事件(Event)、条件变量(Condition)、信号量(Semaphore)、锁(Lock)等同步...
- `setDaemon(True)`将线程标记为守护线程,当所有非守护线程结束后,即使仍有守护线程运行,程序也会退出。 在`MultitaskThreadSocket.py`的例子中,我们可以预期它会创建一个Socket服务器,每当有新的客户端连接...
9. **守护线程(daemon)**:线程可以通过设置`daemon`属性为`True`或`False`来指定其是否为守护线程。守护线程不会阻止进程的结束,通常用于后台任务。 10. **线程间的通信**:Python的`queue`模块提供了线程安全...
- 创建多个线程实例,并设置为守护线程,这意味着主线程结束时这些线程也会被强制结束。 - 将待检测的主机地址放入队列中。 - 调用`queue.join()`确保所有任务完成前主线程不会退出。 4. **读取IP列表** ```...
守护线程:如果在程序中将子线程设置为守护线程,则该子线程会在主线程结束时自动退出,设置方式为thread.setDaemon(True),要在thread.start()之前设置,默认是false的,也就是主线程结束时,子线程依然在执行。...
本文将深入探讨Python多线程的相关知识点,包括线程的创建、线程加锁、线程间通信、线程池的使用以及守护线程与线程状态信息的理解。 1. **线程创建** 在Python中,我们可以使用`threading`模块来创建线程。通过...
3. **守护线程**:使用`setDaemon(True)`方法将线程设置为守护线程,守护线程在所有非守护线程结束后随主进程一同结束: ```python import threading def run(n): print(f"task {n}") if __name__ == '__main...
在主程序结束前,如果还有守护线程在运行,Python解释器将直接退出。`setDaemon`方法需要在`start`方法之前调用。 我们通过一个简单的示例来演示如何使用Python的`threading`模块: ```python import threading ...
一旦将线程设置为守护线程,那么当主线程(或被守护的线程)结束时,守护线程也会自动退出,即使该线程还未执行完成。 - **设置守护线程**:通过调用`setDaemon(True)`方法可以将线程设置为守护线程。 - **作用**...
实现Python守护线程主要涉及`threading`模块中的`setDaemon()`方法。以下是对该方法的详细解释: 1. **设置守护线程**: - 在创建线程并调用`start()`方法启动线程之前,你需要调用`setDaemon(True)`来设置该线程...
当主线程结束时,所有非守护线程将被强制终止,而守护线程则会继续运行,直到它们完成自己的工作。 4. **线程池**:`ThreadPoolExecutor`是`concurrent.futures`模块的一部分,它允许预先创建一组线程,然后异步...
- 设置线程的`daemon`属性为`True`,当主线程结束时,守护线程也会被强制结束,无论其是否还在运行。 - 非守护线程则必须执行完毕才能结束进程。 7. **线程间的通信**: - 使用`queue`模块提供的队列类进行线程...
- **守护线程(后台线程)**:守护线程主要用于执行后台任务,如日志记录等。当所有非守护线程结束时,守护线程将自动结束。 - **前台线程**:除了守护线程之外的所有线程,这些线程通常是用户直接创建的线程,需要...
如果某个非守护线程(daemon)仍在运行,Python解释器不会立即退出,直到所有非守护线程都结束。 当我们在多线程中调用`exit()`时,可能会遇到无法退出的情况,这是因为`exit()`抛出的`SystemExit`异常可能被线程的...
这篇笔记主要讲解了Python中的多线程基础知识,包括单线程、多线程的创建、守护线程以及线程的join方法。 1. 单线程: 在Python中,程序默认是单线程执行的。例如,`test_1`和`test_2`两个函数按照顺序执行,`test_...