首页 > 其他分享 >线程的概念与多线程模型

线程的概念与多线程模型

时间:2024-09-22 17:48:08浏览次数:9  
标签:模型 程序执行 并发 线程 进程 多线程

目录

线程的概念

线程的属性

多线程模型

一对多模型​编辑​编辑​编辑

多对一模型

多对多模型​编辑​编辑


线程的概念

首先先了解有线程和没线程的区别

没线程的进程:进程间虽可以相互切换并发执行,但每个进程内的程序不能相互切换并发执行。就比如你可以一边听音乐一遍聊微信,但你没有线程,你微信不能同时视频和文字聊天。

有线程的进程:传统的进程是程序执行流的最小单位。引入线程后,线程成为了程序执行流的最小单位,进程只作为除CPU之外的系统资源的分配单元(如打印机、内存地址空间等都是分配给进程的)。你就可以实现同时视频和文字聊天甚至可以传文件等操作。

        所以可以把线程理解为“轻量级进程”线程是一个基本的CPU执行单元,也是程序执行流的最小单位。引入线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任务。

线程的属性

多线程模型

  • 一对多模型

  • 多对一模型

  • 多对多模型

标签:模型,程序执行,并发,线程,进程,多线程
From: https://blog.csdn.net/2401_83333487/article/details/142417796

相关文章

  • 书生大模型实战(从入门到进阶)L0-Python
    目录Python实现WordCountVscode连接InternStudiodebugdebug单个python文件在vscode使用命令行进行debug本文是对书生大模型L0-Python部分的学习和实现,学习地址如下:学习地址:‬​​​​⁠​​‌⁠‍⁠​‬​​​​​​​⁠‬​​​⁠​​‌​​​​​‍​​​⁠​​​学......
  • NCNN 源码(1)-模型加载-数据预处理-模型推理
    参考ncnn第一个版本的代码。0整体流程demo:squeezenetncnn自带的一个经典demo:squeezenet的代码://网络加载ncnn::Netsqueezenet;squeezenet.load_param("squeezenet_v1.1.param");squeezenet.load_model("squeezenet_v1.1.bin");//数据预处理ncnn::Matin......
  • 听说ChatGPT o1推理模型即将问世,传统问答系统是否还有存在的必要?毕业设计:基于知识图谱
     OpenAI隆重推出全新一代的o1模型,该模型在多个领域展现出了非凡的能力,标志着人工智能技术的又一次飞跃。该模型专门解决比此前的科学、代码和数学模型能做到的更难的问题,实现复杂推理。那来看看并体验以下我们传统的问答系统的设计流程和具体面貌吧!!!1.1系统架构设计1.1.1......
  • AIGC实战之如何构建出更好的大模型RAG系统
      大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学......
  • C++ 线程池
    #include<iostream>#include<string>#include<memory>#include<vector>#include<thread>#include<queue>#include<functional>#include<mutex>usingnamespacestd;classThreadPool{public:Thread......
  • JVM基础知识(二)Java内存模型
    java线程之可见性volatile不需要加锁,比synchronized更轻量级,不会阻塞线程;从内存可见性角度看,volatile读相当于加锁,volatile写相当于解锁。synchronized既能保证可见性,又能保证原子性;volatile只能保证可见性,无法保证原子性。同步退出同步块->释放监视器->刷......
  • [大语言模型-论文精读] 以《黑神话:悟空》为研究案例探讨VLMs能否玩动作角色扮演游戏?
    1.论文简介论文《CanVLMsPlayActionRole-PlayingGames?TakeBlackMythWukongasaStudyCase》是阿里巴巴集团的PengChen、PiBu、JunSong和YuanGao,在2024.09.19提交到arXiv上的研究论文。论文:https://arxiv.org/abs/2409.12889代码和数据:https://varp-......
  • 【多线程面试题】涵盖三个常见的场景
    1.多线程轮流打印数字最简单的代码题,使用两种加锁方式,sychronized和ReentranLocksychronizedpublicclassMain{privatestaticfinalObjectlock=newObject();privatestaticintnum=100;privatestaticintcnt=0;publicstaticvoidm......
  • 解锁Java线程池:实战技巧与陷阱规避
    专业在线打字练习网站-巧手打字通,只输出有价值的知识。一前言线程池作为初学者常感困惑的一个领域,本次“巧手打字通课堂”将深入剖析其中几个最为普遍的误区。为了更清晰地阐述这些知识点,让我们以一个具体定义的线程池为例来展开说明。如下:ThreadPoolExecutorexecutor=ne......
  • 详解机器学习经典模型(原理及应用)——随机森林
    一、什么是随机森林        随机森林(RandomForest)是一种集成学习方法(EnsembleLearning),它通过构建多个决策树(决策树原理及应用可参考此处)并将它们的结果结合起来,以提高预测的准确性和稳定性(就是多棵树构成一片森林的意思)。与决策树一样,随机森林也是同时可以用于分类......