该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

给你写个最简单的

多线程分同步和异步的,我已经给你写上了synchronized ,但注释了,你可以顺便看看加上它和去掉他的区别!

public class Thread2 {

Thread t1 = new Thread(new Runnable() {

public void run() {

m4t1();

}

}, "t1");

Thread t2 = new Thread(new Runnable() {

public void run() {

m4t2();

}

}, "t2");

public void m4t1() {

//   synchronized (this) {

int i = 5;

while (i-- > 0) {

System.out.println(Thread.currentThread().getName() + " : " + i);

try {

Thread.sleep(500);

} catch (InterruptedException ie) {}

}

//   }

}

public void m4t2() {

//  synchronized (this) {

int i = 5;

while (i-- > 0) {

System.out.println(Thread.currentThread().getName() + " : " + i);

try {

Thread.sleep(500);

} catch (InterruptedException ie) {}

//   }

}

}

public static void main(String[] args) {

Thread2 t1 =new Thread2();

t1.t1.start();

t1.t2.start();

}

}

java线程能做什么_java中的多线程能做什么 ?基本作用能说下吗?相关推荐

  1. java线程池拒绝策略_Java核心知识 多线程并发 线程池原理(二十三)

    线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后 启动这些任务,如果线程数量超过了最大数量超出数量的线程排队等候,等其它线程执行完毕, 再从队列中取出任务来执行.他 ...

  2. java线程开启不了_Java中多线程启动,为什么调用的是start方法,而不是run方法?...

    前言 大年初二,大家新年快乐,我又开始码字了.写这篇文章,源于在家和基友交流的时候,基友问到了,我猛然发现还真是这么回事,多线程启动调用的都是start,那么为什么没人掉用run呢?于是打开我的ide ...

  3. java线程池怎么创建_java中的线程池,如何创建?

    Java中的线程池它是线程的容器,或者(换句话说,它是具有执行任务能力的线程的集合). 我们可以使用ThreadPool框架来定位(或实现)线程池. 线程池可以包含多个线程.每当我们执行任何任务时,线 ...

  4. java线程睡眠一分钟_Java中的TimerTimerTask和线程睡眠

    我发现类似的问题在这里问,但没有回答我的满意.所以再次重申这个问题 – 我有一个需要定期完成的任务(比如说1分钟间隔).使用Timertask&计时器做这个,而不是创建一个新的线程,有一个无限 ...

  5. java 线程不安全例子_Java中多线程安全问题实例分析

    案例package com.duyang.thread.basic.basethread; /** * @author :jiaolian * @date :Created in 2020-12-16 ...

  6. java中怎么判断一段代码时线程安全还是非线程安全_Java 中的多线程你只要看这一篇就够了...

    引 如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现.说这个 ...

  7. java怎样获取线程的进度_java中的多线程——进度2

    多线程总结: 1,进程和线程的概念. |--进程:是一块包含了某些资源的内存区域.操作系统利用进程把它的工作划分为一些功能单元: 最小的内存单元: 是具有一定独立功能的程序关于某个数据集合上的一次运行 ...

  8. java中如何开启事务_Java中开启事务操做数据库

    1.事务的四大特性(ACID)html 一.原子性(atomicity):组成事务的语句造成了一个逻辑单元,不能只执行一部分:数据库 二.一致性(consistency):在事务处理执行先后,数据库与 ...

  9. java 多个监听_java中监听一个客户端怎么做?监听多个怎么做?

    随着时代的不断进步与发展,人们对于科学技术的使用也越来越普遍化.人们都开始自己学习编程语言以更好的适应时代的发展.今天就来为大家介绍一下,java中监听一个客户端怎么做?监听多个怎么做?一起来看看吧. ...

最新文章

  1. android zxing作用,Android / ZXing不再有效
  2. 在Mac上设置环境变量并永久生效的方法
  3. python如何将图片的像素矩阵绘制成图片(python,matplotlib):TypeError: Invalid shape (1, 28, 28) for image data
  4. 用js取1-100的随机数
  5. 网络营销外包立足用户角度完成企业网站网络营销外包优化
  6. C/C++快速读写磁盘数据的方法-块读取/异步/优化分析算法/内存文件映射的原理和使用
  7. How is assignment blocks of overview pages read from configuration
  8. 贷款时,如何评估借款人的还款意愿
  9. Udp通讯(零基础)
  10. Bootstrap按钮支持的元素
  11. js选择html元素,JavaScript中获取HTML元素值的三种方法
  12. STM32F107单片机驱动Dp83848以太网芯片程序
  13. 蘑菇租房java,租房经历总结-----我是如何2天找到合适租房的(房东直租)简单粗暴...
  14. 守望先锋:源氏跑酷之球图制作分享
  15. 商场管理系统实战项目
  16. NopCommerce源码架构详解--TypeFinder程序集类型自动查找及操作相关源码分析
  17. open-falcon短信报警
  18. re正则匹配中文字符
  19. 几个期货基本面因子的研究
  20. 首先下载安装data.table包_首次揭秘“超级签”与企业包行业内幕!

热门文章

  1. 借助腾讯云CDN开启全站https及问题解决分享
  2. 异常详细信息: System.Web.HttpException: 请求在此上下文中不可用
  3. nignx部署Vue单页面刷新路由404问题解决
  4. too many open files(打开的文件过多)解决方法
  5. vue的$nextTick使用总结,this.$refs为undefined的解决办法,element Ui的树形控件setCheckedKeys方法无法使用
  6. 无法为新的Android ActionBar支持找到Theme.AppCompat.Light
  7. 如何清除Git中的本地工作目录? [重复]
  8. 基于BootStrap 4.x 中的Flex 实现各种布局
  9. Mysqldump备份说明及数据库备份脚本分享-运维笔记
  10. 常纪文:智慧城市有助于实现低碳绿色发展