我们通常在电脑中打开的应用称作进程,一个应用就是一个进程,而一个进程里边一般包含多个线程。

系统要为每一个进程分配独立的内存空间,而进程里的多个线程共用这些内存。

我们通常所写的main方法就是一个线程,独立的线程都是顺序执行的,但是多个线程同时存在的时候,却不一定是顺序执行,因为多线程在执行的时候会抢夺系统分配出来的时间片段,具有不确定性。

创建线程有两种方式,一种是继承Thread,另一种是实现Runnable接口,例如下边的例子:

package demo1;

/**

* 多线程练习1

* @authortuzongxun

*

*/

public class ThreadTest3 {

publicstaticvoidmain(String[] args) {

Thread111 thread111 = newThread111();

Thread222 thread222 = newThread222();

thread111.start();

new Thread(thread222, "thread222").start();

}

}

classThread111extends Thread {

@Override

public void run() {

for (int i = 0; i <1000; i++) {

System.out.println(this.getName() + ":线程1");

}

}

}

classThread222implements Runnable {

@Override

public void run() {

for (int i = 0; i <1000; i++) {

System.out.println(Thread.currentThread().getName() + ":线程2");

}

}

}

如上代码,创建线程的时候,不论是继承Thread还是实现runnable接口,一般都要重写run方法。

线程启动是调用线程的start方法,线程还有sleep、join、wait等阻塞方法。

线程一般有创建(new)、就绪(runnable)、运行(running)、阻塞(blocked)、死亡(dead)五种状态,也称作线程的生命周期。

一般,阻塞状态的线程不能直接变成运行状态,而是会先就绪,然后才会在适当的时机运行。start方法之后,线程就会处于就绪状态。

(三十)java多线程一相关推荐

  1. (十)java多线程之CountDownLatch

    目录 引言 理论 例子 打赏 本人邮箱: kco1989@qq.com 欢迎转载,转载请注明网址 http://blog.csdn.net/tianshi_kco github: https://gi ...

  2. java小项目租车系统_Java学习笔记三十:Java小项目之租车系统

    Java小项目之租车系统 一:项目背景介绍: 根据所学知识,编写一个控制台版的"呱呱租车系统" 功能: 1.展示所有可租车辆: 2.选择车型.租车量: 3.展示租车清单,包含:总金 ...

  3. (二十)java多线程之ScheduledThreadPoolExecutor

    本人邮箱: <kco1989@qq.com> 欢迎转载,转载请注明网址 http://blog.csdn.net/tianshi_kco github: https://github.co ...

  4. 漫步最优化三十——非精确线搜索

    说明:今天10.24,祝程序员们节日快乐,呜啦啦啦\textbf{说明:今天10.24,祝程序员们节日快乐,呜啦啦啦} 爱上一个人后,\textbf{爱上一个人后,} 发现自己变得主动了,\textb ...

  5. 年薪二十、三十、四十万的Java程序员的生活现状

    点击上方"程序员大咖",选择"置顶公众号" 关键时刻,第一时间送达! 深圳程序员 把年终奖金这种虚无的算上,刚好过了20的线,此外又是从始至终从事软件行业.符合 ...

  6. 三十八、Java集合中的ConcurrentHashMap

    @Author:Runsen @Date:2020/6/6 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...

  7. 三十九、Java集合中的HashSet和TreeSet

    @Author:Runsen @Date:2020/6/6 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...

  8. 三十六、Java集合中的HashMap

    @Author:Runsen @Date:2020/6/3 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...

  9. 三十二、Java集合中的ArrayList

    @Author:Runsen @Date:2020/6/3 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...

最新文章

  1. mockito_使用Mockito模拟自动装配的字段
  2. MATLAB实战系列(十七)-大学生数学建模赛题解析-水塔中水流量估计(附MATLAB源码)
  3. Activity详细解释(生命周期、以各种方式启动Activity、状态保存,等完全退出)...
  4. 微信、企业微信和支付窗 SDK 三合一,JeeWx-api 1.2.0 版本发布
  5. 去哪儿-06-home-ajax
  6. 职称计算机excel2015年,2015年职称计算机《Excel2003》最新章节练习题(5)
  7. Java 动态代理机制详解
  8. SaltStack之state.sls
  9. sketchup 255个su常用插件)_[插件课堂] SU.KIT发布了v2020,完美支持SketchUp 2020
  10. unix linux性能对比,各有所长!对比LINUX和UNIX系统优势
  11. Unity Editor 编辑器扩展 九 Gizmos
  12. c语言库用不用下载杀毒软件,开源杀毒软件ClamAV需要你的支持和帮助
  13. linux 无盘 重新生成内核,Linux无盘系统_尐惢
  14. 守望轮回谷等待服务器响应,《守望轮回谷》即将接班自走棋?Dota2新地图再次掀起热潮...
  15. 【nacos】com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
  16. 微信支付/退费(服务商)模式
  17. 计算机收藏夹位于哪个磁盘,win10收藏夹在电脑什么位置_win10系统收藏夹在哪里...
  18. 推荐8部好看的抗日电视剧
  19. python logging模块-写日志、log回滚
  20. 自动插入匹配与标题相关的百度图片或者搜狗图片软件-批量插入txt文档-Chatgpt批量写文章配图神器

热门文章

  1. 详测 Generics Collections TQueue (3): OnNotify、Extract
  2. functools学习有感
  3. 视频:参加ZDNet《小崔说事》谈知识管理
  4. Spring Boot CMI 使用笔记
  5. linux生成表格文件大小,如何为linux中的文件夹生成清单(文件列表及其大小和数量)...
  6. 复制(Copying)
  7. 初步认识Volatile-缓存一致性协议
  8. Spring 核心容器类BeanFactory
  9. 是否允许一部分人“先富起来”
  10. 算术运算符_加号的多种用法