- 一、线程同步 1.卖票问题案例需求某电影院目前正在上映国产大片,共有100张票,而它有3个窗口卖票,请设计一个程序模拟该电影院卖票实现步骤定义一个类SellTicket实现Runnable接口,里面定义一个成员变量:private int tickets = 100;在SellTicket类中重写run()方法实现卖票,代码步骤如下判断票数大于0,就卖票,并告知是哪个窗口卖的卖了票之后,总... 一、线程同步 1.卖票问题案例需求某电影院目前正在上映国产大片,共有100张票,而它有3个窗口卖票,请设计一个程序模拟该电影院卖票实现步骤定义一个类SellTicket实现Runnable接口,里面定义一个成员变量:private int tickets = 100;在SellTicket类中重写run()方法实现卖票,代码步骤如下判断票数大于0,就卖票,并告知是哪个窗口卖的卖了票之后,总...
- PageHelper对线程局部变量的妙用 PageHelper对线程局部变量的妙用
- 一、多线程 1.简单了解多线程是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能。 2.并发和并行并行:在同一时刻,有多个指令在多个CPU上同时执行。并发:在同一时刻,有多个指令在单个CPU上交替执行。 3.进程和线程进程:是正在运行的程序独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位动态性... 一、多线程 1.简单了解多线程是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能。 2.并发和并行并行:在同一时刻,有多个指令在多个CPU上同时执行。并发:在同一时刻,有多个指令在单个CPU上交替执行。 3.进程和线程进程:是正在运行的程序独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位动态性...
- 新一轮的面试已经过去,可能是疫情的原因吧,很多童鞋纷纷留言说今年的面试题难度又提高了,尤其是对并发编程的知识。我细想了下,也许有那么点疫情的原因吧,但无论面试的套路怎么变,只要掌握了核心知识和底层原理,吊打面试官应该不难吧。玩笑归玩笑,学习知识并不只是为了应付面试,更应该将这些知识运用到实际的工作中。 新一轮的面试已经过去,可能是疫情的原因吧,很多童鞋纷纷留言说今年的面试题难度又提高了,尤其是对并发编程的知识。我细想了下,也许有那么点疫情的原因吧,但无论面试的套路怎么变,只要掌握了核心知识和底层原理,吊打面试官应该不难吧。玩笑归玩笑,学习知识并不只是为了应付面试,更应该将这些知识运用到实际的工作中。
- 今天你想爬谁的粉呢?谁粉多,就爬谁。那谁有粉?XXXX有粉。今天咱们继续学习 Python 爬虫,从本篇博客开始进行短暂的(15 篇)多线程爬虫学习。 目标数据源分析本次要抓取的数据源是 https://blog.csdn.net/qing_gee?type=sub&subType=fans,其中的 ID 可以切换为你希望采集的 ID,当然包括你自己的 ID。该页面下滑刷新会自动请求一个 A... 今天你想爬谁的粉呢?谁粉多,就爬谁。那谁有粉?XXXX有粉。今天咱们继续学习 Python 爬虫,从本篇博客开始进行短暂的(15 篇)多线程爬虫学习。 目标数据源分析本次要抓取的数据源是 https://blog.csdn.net/qing_gee?type=sub&subType=fans,其中的 ID 可以切换为你希望采集的 ID,当然包括你自己的 ID。该页面下滑刷新会自动请求一个 A...
- Hello,你好呀,我是灰小猿,一个超会写bug的程序猿!身为一名浪漫的程序员,应该如何深入的实现进程同步嘞?今天就来和小猿一探究竟吧😇**【文中程序员表情包大赏】!**上一篇文章和大家讲了对实现进程同步的方法的探究。今天就继续来和大家分享如何使用信号量机制来解决问题,以及进程同步的原理分析。1.3 使用信号量机制解决问题使用信号量机制所要解决的问题还是进程的互斥和同步问题。那么这两种问题... Hello,你好呀,我是灰小猿,一个超会写bug的程序猿!身为一名浪漫的程序员,应该如何深入的实现进程同步嘞?今天就来和小猿一探究竟吧😇**【文中程序员表情包大赏】!**上一篇文章和大家讲了对实现进程同步的方法的探究。今天就继续来和大家分享如何使用信号量机制来解决问题,以及进程同步的原理分析。1.3 使用信号量机制解决问题使用信号量机制所要解决的问题还是进程的互斥和同步问题。那么这两种问题...
- @[toc]对多种进程间通信方式的介绍在这篇总结过了:进程间通信,不过没有提互斥,因为我一直是把互斥和通信分开的。这一篇的话将从互斥方面入手,按时间线铺开。这不最近要写自己写网络层了嘛,操作系统的老底子得翻翻。 临界区避免竞争条件的问题也可以用一种抽象的方式进行描述,一个进程的一部分时间做内部计算或另外一些不会应发竞争条件的操作。在某些时候进程可能需要访问共享内存或共享文件,或执行另外一些会... @[toc]对多种进程间通信方式的介绍在这篇总结过了:进程间通信,不过没有提互斥,因为我一直是把互斥和通信分开的。这一篇的话将从互斥方面入手,按时间线铺开。这不最近要写自己写网络层了嘛,操作系统的老底子得翻翻。 临界区避免竞争条件的问题也可以用一种抽象的方式进行描述,一个进程的一部分时间做内部计算或另外一些不会应发竞争条件的操作。在某些时候进程可能需要访问共享内存或共享文件,或执行另外一些会...
- 1. makefile很重要什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile... 1. makefile很重要什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile...
- 进程与线程对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个 Word 就启动了一个 Word 进程。有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内... 进程与线程对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个 Word 就启动了一个 Word 进程。有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内...
- 操作系统操作系统(Operation System, OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统是计算机系统资源的管理者,分为:处理机管理(CPU)存储器管理(内存)文件管理(外存)设备管理(I/O)操作系统是用户与计算机硬件系统之间的接口,同时也是计算机硬件和其他软件的接口,分为:命令... 操作系统操作系统(Operation System, OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统是计算机系统资源的管理者,分为:处理机管理(CPU)存储器管理(内存)文件管理(外存)设备管理(I/O)操作系统是用户与计算机硬件系统之间的接口,同时也是计算机硬件和其他软件的接口,分为:命令...
- @TOC 第一章 什么是linux多用户,多任务,支持多线程和多CPU的操作系统,linux的应用领域:免费,稳定,高效的, 一般运行在大型服务器上常用目录介绍:目录名说明/ 根目录一般根目录下只存放目录,有且只有一个根目录/home 家目录系统默认的家目录,新增用户账号时,用户的家目录都存放在此目录下/root系统管理员root的家目录/bin/usr/bin可执行二进制文件的目录/etc... @TOC 第一章 什么是linux多用户,多任务,支持多线程和多CPU的操作系统,linux的应用领域:免费,稳定,高效的, 一般运行在大型服务器上常用目录介绍:目录名说明/ 根目录一般根目录下只存放目录,有且只有一个根目录/home 家目录系统默认的家目录,新增用户账号时,用户的家目录都存放在此目录下/root系统管理员root的家目录/bin/usr/bin可执行二进制文件的目录/etc...
- 我们知道在Docker容器里是无法访问到宿主操作系统的文件目录的,但这种隔离是怎么实现的呢?其实一点也不神奇——利用了Linux系统的内部命令chroot。chroot能将进程的根目录设置成任意指定的目录。使用chroot我们能创建一个新的进程,并且以chroot执行时传入的参数作为新进程的根目录。因为新进程创建之后就无法访问除了新进程创建时传入chroot参数之外的其他文件目录,为了确保这... 我们知道在Docker容器里是无法访问到宿主操作系统的文件目录的,但这种隔离是怎么实现的呢?其实一点也不神奇——利用了Linux系统的内部命令chroot。chroot能将进程的根目录设置成任意指定的目录。使用chroot我们能创建一个新的进程,并且以chroot执行时传入的参数作为新进程的根目录。因为新进程创建之后就无法访问除了新进程创建时传入chroot参数之外的其他文件目录,为了确保这...
- OpenMP 和 NUMA架构OpenMP是一个基于共享内存的并发编程模型。在程序中加入了OpenMP引导语后,主线程会生成一系列的子线程,并将任务划分给子线程进行执行。这里需要强调的是,所有的线程在同一个地址空间内运行,每个线程有独立的栈和程序计数器,但是所有线程共享进程的堆、数据段、代码段等内存空间。NUMA架构全称non-uniform memory achitecture,是一种非... OpenMP 和 NUMA架构OpenMP是一个基于共享内存的并发编程模型。在程序中加入了OpenMP引导语后,主线程会生成一系列的子线程,并将任务划分给子线程进行执行。这里需要强调的是,所有的线程在同一个地址空间内运行,每个线程有独立的栈和程序计数器,但是所有线程共享进程的堆、数据段、代码段等内存空间。NUMA架构全称non-uniform memory achitecture,是一种非...
- 目录前言正文前言Golang语言中有一个其他语言都没有的秘密武器——Goroutine,也就是协程。 正文协程是Golang语言中特有的名词,他不同于进程Process和线程Thread。Golang语言中的Goroutine协程与线程类似,属于一种轻量的线程,但是它的创建成本非常小,比起创建线程来更加方便。我们一般使用Goroutine是执行某一个特定的任务,分工更加明确。说了这么多,那么... 目录前言正文前言Golang语言中有一个其他语言都没有的秘密武器——Goroutine,也就是协程。 正文协程是Golang语言中特有的名词,他不同于进程Process和线程Thread。Golang语言中的Goroutine协程与线程类似,属于一种轻量的线程,但是它的创建成本非常小,比起创建线程来更加方便。我们一般使用Goroutine是执行某一个特定的任务,分工更加明确。说了这么多,那么...
- Linux线程里还支持一个围栏机制--也就是屏障功能。这个围栏机制,可以设置等待的线程数量,当指定数量的线程都到齐之后再全部唤醒—放行。它的的功能和它的名字是匹配的,就是围栏,就像在赛跑比赛场上,要进行比赛时,必须等待所有运动员都到齐全了,都到起跑线上了,然后一声令下,大家再一起跑出去。 Linux线程里还支持一个围栏机制--也就是屏障功能。这个围栏机制,可以设置等待的线程数量,当指定数量的线程都到齐之后再全部唤醒—放行。它的的功能和它的名字是匹配的,就是围栏,就像在赛跑比赛场上,要进行比赛时,必须等待所有运动员都到齐全了,都到起跑线上了,然后一声令下,大家再一起跑出去。
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签