【Java多线程与高并发】1、线程的基本概念
发布日期:2021-07-01 02:43:21 浏览次数:2 分类:技术文章

本文共 1644 字,大约阅读时间需要 5 分钟。

什么叫进程?什么是线程?

  • Program app -> QQ.exe
  • 进程:做一个简单的解释,你的硬盘上有一个简单的程序(QQ.exe),这个程序是一个静态的概念,它被扔在硬盘上也没人理他,但是当你双击它,弹出一个界面输入账号密码登录进去了,OK,这个时候叫做一个进程。进程相对于程序来说它是一个动态的概念。
  • 线程:作为一个进程里面最小的执行单元它就叫一个线程,用简单的话讲一个程序里不同的执行路径就叫做一个线程。

进程和线程的区别

一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。

而线程是在进程中执行的一个任务。

Java运行环境是一个包含了不同的类和程序的单一进程。

线程可以被称为轻量级进程。
线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。

代码示例

import java.util.concurrent.TimeUnit;public class T01_WhatIsThread {
private static class Thread_1 extends Thread {
@Override public void run() {
// super.run(); for(int i=0; i<10; i++) {
try {
TimeUnit.MICROSECONDS.sleep(1); } catch (InterruptedException e) {
e.printStackTrace(); } System.out.println("线程Thread_1..."); } } } public static void main(String[] args) {
//new Thread_1().run(); //注意,两种方式的结果是不一样的,run()后是先执先执行完Thread_1,再打印10个main new Thread_1().start(); //要用start()启动线程 for(int i=0; i<10; i++) {
try {
TimeUnit.MICROSECONDS.sleep(1); } catch (InterruptedException e) {
e.printStackTrace(); } System.out.println("线程main..."); } }}
线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程Thread_1...线程main...线程Thread_1...线程Thread_1...

观察上面程序的数据结果,你会看到字符串“线程Thread_1…”和“线程Main…”的交替输出,这就是程序中有两条不同的执行路径在交叉执行,这就是直观概念上的线程,概念性的东西,理解就好,没有必要咬文嚼字的去背文字的定义。

转载地址:https://melodyjerry.blog.csdn.net/article/details/116093207 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【Java多线程与高并发】2、线程的创建、启动、停止方式
下一篇:【Java多线程与高并发】0、前言&思维导图

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年05月02日 04时17分31秒