Java多线程
2022/4/1 20:49:32
本文主要是介绍Java多线程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
线程与进程
进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间.
线程:是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换,并发执行. 一个进程最少 有一个线程. 线程实际上是在进程基础之上的进一步划分,一个进程启动之后,里面的若干执行路径又可以划分 成若干个线程.
为什么使用线程:1.在开发软件的时候提高流畅度
2.用户体验和客户需求等
以下为多线程售票的问题:
1 package com; 2 3 import javax.imageio.stream.ImageInputStream; 4 5 public class Demo02 { 6 public static void main(String[] args) { 7 Object o = new Object(); 8 Runnable run = new Ticket(); 9 new Thread(run).start(); //建立多线程 10 new Thread(run).start(); 11 new Thread(run).start(); 12 13 14 } 15 16 public static class Ticket implements Runnable{ 17 private int count = 10; //票数量 18 private Object o = new Object(); 19 @Override 20 public void run() { 21 while (true) { 22 23 synchronized(o){ //同步对象 24 if (count > 0) { 25 System.out.println("正在准备售票!"); 26 try { 27 Thread.sleep(1000); 28 } catch (InterruptedException e) { 29 e.printStackTrace(); 30 } 31 count--; 32 System.out.println(Thread.currentThread().getName()+"出票成功,余票:" + count); //获取线程的名字 33 34 }else { 35 break; //卖完退出 36 } 37 38 } 39 } 40 } 41 } 42 43 }
这篇关于Java多线程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27消息中间件底层原理资料详解
- 2024-11-27RocketMQ底层原理资料详解:新手入门教程
- 2024-11-27MQ底层原理资料详解:新手入门教程
- 2024-11-27MQ项目开发资料入门教程
- 2024-11-27RocketMQ源码资料详解:新手入门教程
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器