热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

线程的简单理解,适用于初接触的小白,另类例子讲解,通俗易懂

点击跳转进程线程多线程进程了解线程的时候,我们先了解一个概念,就是进程,那是什么是进程呢?比如我们用电脑的时候࿰


点击跳转

  • 进程
  • 线程
  • 多线程


进程

了解线程的时候,我们先了解一个概念,就是进程,那是什么是进程呢?比如我们用电脑的时候,我们使用的软件,比如浏览器、idea、音乐软件等等,这样的应用软件我们就可以看作一个个进程;


当我们打开电脑的任务管理器,我们就可以看到进程


在这里插入图片描述

在这里我们要清楚一个东西 ,就是我们在使用 这些软件的前提是什么?需要有搭载这些软件的系统,win或者是苹果,这些都是系统,就是因为有了这些系统,我们才可以放肆的使用软件;
但我们软件运行时需要进程,于是我们系统就给了软件一个进程,这时候,我们才可以正常使用;



线程

那什么是线程呢?比如我们用的浏览器,它占用了系统的一个进程对吧;
现在我用这个浏览器,下载了一个T的视频,要花费很长时间,于是我打算边下载边看,在看的时候呢,我打开了弹幕,时不时的自己还发了弹窗;

那这个过程,我用浏览器做了很多事情,但每个事情他的功能不一样,比如下载、播放、观看弹幕、发送弹幕;

那我们可以形象的理解每一个功能就是一个线程,线程是系统运行调度的最小单位,一个进程可以有多个线程,但一个线程只能有一个进程,要不然你打开软件准备聊天,结果idea突然启动了,这不是开玩笑?



多线程

多线程这个就很好理解,我们都抢过红包吧?有一次张三在群里面发红包,发了一个红包,然后我们大约几百人都去抢他的红包,那肯定只有一个人抢到,那没抢到的,要不等待张三再发红包,或者是直接放弃不抢了;

那我们这些抢红包的每一个人都可以看作是一个线程,那我们一百人就是一百个线程,一百个线程都去做一个事情,或者说是实现 某个功能,这就是多线程;


结语:每一个人的人生经历都不同,我们所做的每个选择都是在影响我们的人生,已经后悔的事情不必介怀,你要做的是改变现在



推荐阅读
  • 本文介绍了Java高并发程序设计中线程安全的概念与synchronized关键字的使用。通过一个计数器的例子,演示了多线程同时对变量进行累加操作时可能出现的问题。最终值会小于预期的原因是因为两个线程同时对变量进行写入时,其中一个线程的结果会覆盖另一个线程的结果。为了解决这个问题,可以使用synchronized关键字来保证线程安全。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • IB 物理真题解析:比潜热、理想气体的应用
    本文是对2017年IB物理试卷paper 2中一道涉及比潜热、理想气体和功率的大题进行解析。题目涉及液氧蒸发成氧气的过程,讲解了液氧和氧气分子的结构以及蒸发后分子之间的作用力变化。同时,文章也给出了解题技巧,建议根据得分点的数量来合理分配答题时间。最后,文章提供了答案解析,标注了每个得分点的位置。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 本文讨论了如何在不使用SearchBar display controller的情况下,单独使用SearchBar并捕获其textChange事件。作者介绍了实际状况,即左侧SliderMenu中的SearchBar需要在主页TableView中显示搜索结果。然后,作者提供了解决方案和步骤,帮助读者实现这一功能。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 在使用Visual Studio 2019评估Blazor时,将taghelper添加到剃刀文件时会出现错误。错误信息是"标记助手:@addTagHelper *,BlazorPOC.Validations"。需要在文件顶部添加@using语句"@using BlazorPOC.Validations"来解决这个问题。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
author-avatar
艳红双唇l丶乱了他神
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有