社区
Java SE
帖子详情
什么是用户线程,什么是守候线程?什么是守护进程?
999朵玫瑰
2010-01-19 11:40:12
有的人说,线程总体分两类:用户线程和守候线程。但是却没说明白什么是用户线程,什么是守候线程?有什么区别?我在程序里写的属于哪个阿?
还有,有的人还说,有守护进程。守护进程又是什么东东呢?我们的项目程序里怎么没有阿?
...全文
876
9
打赏
收藏
什么是用户线程,什么是守候线程?什么是守护进程?
有的人说,线程总体分两类:用户线程和守候线程。但是却没说明白什么是用户线程,什么是守候线程?有什么区别?我在程序里写的属于哪个阿? 还有,有的人还说,有守护进程。守护进程又是什么东东呢?我们的项目程序里怎么没有阿?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SambaGao
2010-01-24
打赏
举报
回复
上面说的很清楚了。
lz可以继续看线程间通信
xxpp688
2010-01-23
打赏
举报
回复
用户线程:是你自己写的,可以手工调用;
守护线程(Daemon Thread):简单的说就是是后台线程,
--他只在后台运行
--他不需要手工调用,自动运行;
--他的任务是为其他线程服务;(jvm垃圾回收就是典型的后台线程)
--当所有前台线程死亡,后台线程生命结束。
(前台所有线程死亡后,JVM会自动通知后台线程死亡)
===前台线程要变成后台线程要在线程start()之前,否则会报错
xxpp688
2010-01-23
打赏
举报
回复
你还问线程和进程的区别是吧;
当一个程序进入内存时,他就变成了一个进程(简单的说就是运行中的程序)
---进程是系统进行资源分配的和调度的一个独立单位;
简单的说,程序(每当你启动一个程序会产生很多的进程)==》程序由进程组成(如任务管理器中的结束程序进程)==》而进程由线程组成(线程被封装在任务管理器中看不见);
进程有三大特性:1.独立性
2.动态性
3.并发性
稍微复杂点的说线程与进程的关系是:线程是进程的组成部分,一个进程可以拥有多个线程,一个线程必须拥有一个父进程; 线程是独立运行的线程不知道进程中是否还有其他线程;线程的执行时抢占式的,线程可以拥有自己的堆栈自己的程序设计器和自己的局部变量~~~(他们的区别太多了,我捡重要的概括一下吧)
总的来说线程比进程有优点:
--进程间不能共享内存,但线程可以;
--系统创建进程需要为该进程重新分配系统资源,但创建线程代价小的多(进程占用内存大,很消耗cpu;线
程占内存很小)且线程可以实现多线程(实现多任务并发···);
--线程容易调度
py330316117
2010-01-20
打赏
举报
回复
一个线程调用void setDaemon(boolean on)方法可以将自己设置成一个守护(Daemon)线程。例如thread.setDaemon(true);线程默认是非守护线程,非守护线程也称用户线程。当程序中的所有线程都结束运行时,即使守护线程的run()方法中还有需要执行的语句,守护线程也立刻结束。
通常在程序运行是会出现如下问题:main方法结束了,但java程序没有结束?
解决方案是:对java来说,只要还有一个前台线程在运行,这个进程就不会结束,如果一个程序只有后台进程运行,这个进程就会结束。在启动start()方法之前调用setDaemon(true)方法可以将线程变成后台线程。
cmzx3444
2010-01-20
打赏
举报
回复
有鸡蛋就砸,哈哈
一头头
2010-01-20
打赏
举报
回复
2楼的不是回答?
额。。。。。太恶心了 被无视了
999朵玫瑰
2010-01-20
打赏
举报
回复
怎么没人回答阿。还没有令人满意的答案呢:(
一头头
2010-01-19
打赏
举报
回复
守护线程与普通线程的唯一区别是:当JVM中所有的线程都是守护线程的时候,JVM就可以退出了;如果还有一个或以上的非守护线程则不会退出。(以上是针对正常退出,调用System.exit则必定会退出)
所以setDeamon(true)的唯一意义就是告诉JVM不需要等待它退出,让JVM喜欢什么退出就退出吧,不用管它。
xlxyeyu
2010-01-19
打赏
举报
回复
忘了。忘得干干净净的~~
Java
线程
:概念与原理
本文深入探讨了Java
线程
的概念与原理,包括进程与
线程
的区别、Java中的
线程
实现方式、
线程
的生命周期及Java应用的
线程
管理。
守护
线程
、
守护进程
本文介绍了Java中的守护
线程
概念及其与
用户
线程
的区别,包括如何设置守护
线程
及其实例演示。同时,深入探讨了Linux/Unix系统中的
守护进程
,详细讲解了创建
守护进程
的步骤和技术要点。
守护进程
本文介绍了Java中守护
线程
的基本概念及使用注意事项,包括如何将
线程
设置为守护
线程
、限制条件及其行为特点。
Java中的
线程
的一点知识
本文详细介绍了Java中的
线程
概念,包括
线程
与进程的区别、
线程
的实现方式、
线程
的生命周期状态及其分类。此外还讲解了如何在Java中创建和运行
线程
。
Python 寄存器位域解析与 JSON 配置工具(芯片开发+寄存器/位域+解析源码+寄存器转储分析)
根据 JSON 指定位宽和字段起止位,解析寄存器数值并显示枚举含义。包含重叠字段、重复名称、位范围和输入数值检查。 适用于嵌入式软件开发人员、驱动开发入门者及相关技术学习者。资源包含源码或模板、使用说明及验证范围说明。Python 3.10+,仅使用标准库;寄存器宽度 1 至 64 位。 功能边界见 README.md,实际验证情况见 TESTING.md。
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章