E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
多线程源码分析
JavaEE初阶-
多线程
2
文章目录一、
多线程
安全问题1.1线程安全问题的原因1.2如何解决线程安全问题二、加锁2.1synchronized2.2synchronized的几种使用方式2.3synchronized的可重入性三、
炙热的大叔
·
2024-09-11 02:16
JavaEE初阶
java-ee
java
jvm
atomic nonatomic assign retain copy strong weak 介绍
atomic设置成员变量的@property属性时,默认为atomic,提供
多线程
安全。在
多线程
环境下,原子操作是必要的,否则有可能引起错误的结果。
weixin_30493321
·
2024-09-10 20:07
移动开发
了解可重入锁
1.基本概念:可重入锁(ReentrantLock),又称递归锁(RecursiveLock),是一种在
多线程
编程中使用的锁机制。它允许同一个线程在持有锁的情况下再次获取它,而不会引起死锁。
GG编程
·
2024-09-10 20:35
java
开发语言
什么是死锁,如何避免死锁
死锁通常发生在计算机系统中的
多线程
或多进程环境下,当每个进程都在等待其他进程释放某些资源时,系统就会出现死锁。
GG编程
·
2024-09-10 20:05
java
开发语言
Rust模块std::thread
编程与项目实战》-CSDN博客《Rust编程与项目实战》(朱文伟,李建英)【摘要书评试读】-京东图书(jd.com)Rust到底值不值得学,之一-CSDN博客Rust到底值不值得学,之二-CSDN博客Rust
多线程
编程概述
夏天又到了
·
2024-09-10 18:49
Rust编程与项目实战
rust
java
算法
牛客错题集3,前端开发结构
ThreadLocal的使用场景:数据库连接:在
多线程
中,如果使用懒汉式的单例模式创
卖家导航
·
2024-09-10 18:15
程序员
oracle
数据库
【Kotlin】OkHttp框架实现网络下载
目录【Kotlin】OkHttp框架实现网络下载需求思路实现实现单线程下载功能实现
多线程
下载功能不积跬步,无以至千里;不积小流,无以成江海。要沉下心来,诗和远方的路费真的很贵!
小叮当不懒
·
2024-09-10 17:40
Android
kotlin
okhttp
android
volatile 关键字
使用场景1.并发
多线程
访问的变量:在
多线程
编程中,如果一个变量可能被一个以上线程同时访问和修改,则应该将该变量声明为volatile。
经常发呆的柴犬
·
2024-09-10 13:13
c语言
Python 创建一个简单的在线聊天系统
在这篇博客中,我们将创建一个简单的在线聊天系统,使用Python的socket库和
多线程
技术来实现服务器和客户端之间的通信。
LIY若依
·
2024-09-10 11:02
服务器
网络
linux
socket
多线程
和Ringbuffer详解
关注微信公众号:【快乐程序猿】查看更多篇章相信很多读者都知道
多线程
是什么,那RingBuffer可能就不太清楚了,那我们先来介绍下什么是RingBuffer。
走别人不走的路
·
2024-09-10 10:24
linux
c语言
android
鸿蒙内核解析,鸿蒙内核
源码分析
(内存概念篇)|解读鸿蒙源码
本系列全部文章进入鸿蒙
源码分析
(总目录)查看目录最难讲的章节坦白讲内存是整个系列里面最
刘轩鸿
·
2024-09-10 09:53
鸿蒙内核解析
Python实现
多线程
、多进程及协程
目录Python实现
多线程
、多进程及协程引言1.
多线程
(Threading)1.1
多线程
的基本概念1.2
多线程
的优点和缺点1.3Python
多线程
的实现2.多进程(Multiprocessing)2.1
闲人编程
·
2024-09-10 09:51
python
python
开发语言
多线程
多进程
协程
并发
异步
鸿蒙轻内核A核
源码分析
系列七 进程管理 (3)
本文记录下进程相关的初始化函数,如OsSystemProcessCreate、OsProcessInit、OsProcessCreateInit、OsUserInitProcess、OsDeInitPCB、OsUserInitProcessStart等。1、LiteOS-A内核进程创建初始化通用函数先看看一些内部函数,不管是初始化用户态进程还是内核态进程,都会使用这些函数,包含进程控制块初始化函数
OpenHarmony_小贾
·
2024-09-10 09:20
OpenHarmony
鸿蒙开发
HarmonyOS
harmonyos
嵌入式硬件
OpenHarmony
鸿蒙嵌入式
鸿蒙开发
鸿蒙内核
进程关联
鸿蒙轻内核A核
源码分析
系列五 虚实映射(6)虚拟映射修改转移
6.1映射属性修改函数LOS_ArchMmuChangeProt函数LOS_ArchMmuChangeProt用于修改进程空间虚拟地址区间的映射保护属性,其中参数archMmu为进程空间的MMU结构体,vaddr为虚拟地址,count为映射的页数,flags为映射使用的新标签属性信息。其中函数名称中的Prot是英文Protect的简写。⑴处对参数进行校验,⑵处查询虚拟地址映射的物理地址,如果没有映
OpenHarmony_小贾
·
2024-09-10 09:50
鸿蒙开发
HarmonyOS
OpenHarmony
harmonyos
OpenHarmony
移动开发
驱动开发
鸿蒙内核
鸿蒙轻内核A核
源码分析
系列五 虚实映射(1)基础概念
虚实映射是指系统通过内存管理单元(MemoryManagementUnit,MMU)将进程空间的虚拟地址(VA)与实际的物理地址(PA)做映射,并指定相应的访问权限、缓存属性等。程序执行时,CPU访问的是虚拟内存,通过MMU找到映射的物理内存,并做相应的代码执行或数据读写操作。MMU的映射由页表(PageTable)来描述,页表保存虚拟地址和物理地址的映射关系以及访问权限等。每个进程在创建的时候都
OpenHarmony_小贾
·
2024-09-10 09:20
鸿蒙开发
HarmonyOS
OpenHarmony
harmonyos
嵌入式硬件
鸿蒙开发
OpenHarmony
鸿蒙嵌入式
鸿蒙内核
鸿蒙轻内核A核
源码分析
系列四(3) 虚拟内存
4.2函数LOS_RegionAlloc函数LOS_RegionAlloc用于从地址空间中申请空闲的虚拟地址区间。参数较多,LosVmSpace*vmSpace指定虚拟地址空间,VADDR_Tvaddr指定虚拟地址,当为空时,从映射区申请虚拟地址;当不为空时,使用该虚拟地址。如果该虚拟地址已经被映射,会先相应的解除映射处理等。size_tlen指定要申请的地区区间的长度。UINT32regionF
OpenHarmony_小贾
·
2024-09-10 09:19
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
OpenHarmony
鸿蒙内核
移动开发
驱动开发
系统开发
鸿蒙轻内核A核
源码分析
系列四(1)虚拟内存进程空间编号
在熟悉下OpenHarmony鸿蒙轻内核提供的虚拟内存(Virtualmemory)管理模块之前,作为预备基础知识,我们先了解下虚拟内存进程空间编号,进程空间编号功能相对独立,源代码文件单独维护。涉及的头文件和C源代码文件分别为arch/arm/arm/include/los_asid.h和arch/arm/arm/src/los_asid.c。本文先介绍OpenHarmony鸿蒙轻内核LiteO
OpenHarmony_小贾
·
2024-09-10 09:49
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
移动开发
鸿蒙内核
鸿蒙开发
OpenHarmony
鸿蒙轻内核A核
源码分析
系列一 数据结构-双向循环链表
在学习OpenHarmony鸿蒙轻内核源代码的时候,常常会遇到一些数据结构的使用。如果没有掌握它们的用法,会导致阅读源代码时很费解、很吃力。本文会给读者介绍源码中重要的数据结构,双向循环链表DoublyLinkedList。在讲解时,会结合数据结构相关绘图,培养读者们的数据结构的平面想象能力,帮助更好的学习和理解这些数据结构的用法。本文中所涉及的源码,以OpenHarmonyLiteOS-A内核为
OpenHarmony_小贾
·
2024-09-10 09:49
OpenHarmony
鸿蒙开发
HarmonyOS
数据结构
harmonyos
链表
OpenHarmony
移动开发
鸿蒙内核
鸿蒙开发
初探ThreadLocal
一、ThreadLocal是干什么的ThreadLocal是用来在
多线程
时存储线程内部的局部变量,各个线程之间的变量是独立的不会相互影响。
祥哲
·
2024-09-10 08:41
java
多线程
内存泄漏
ThreadLocal
简介 我们都知道,
多线程
情况下,是会有资源竞争问题。当并非访问某共享资源时,就会出现问题,尤其是写操作,程序猿一般通过同步锁机制来保证线程安全。
血莲丹
·
2024-09-10 08:11
JAVA基础
java
多线程
内存泄漏
ThreadLocal
Netty
源码分析
:NioEventLoopGroup
Netty
源码分析
:NioEventLoopGroup在工作之余,看到自己公司的超哥(俞超)关于Netty的系列博文,讲解的很好,因此,自己在学习之余也跟了下源代码,来了解Netty,也做了相关的笔记,
HelloWorld_EE
·
2024-09-10 07:09
netty源码分析
源代码
netty
EventLoop
Java
多线程
的可重入和不可重入
在Java中,可重入(Reentrant)和不可重入(Non-reentrant)这两个概念通常用于描述
多线程
环境下的同步方法或代码块的行为。
@See you later
·
2024-09-10 04:44
Java
java
开发语言
深度学习部署:Triton(Triton inference server)【旧称:TensorRT serving,专门针对TensorRT设计的服务器框架,后来变为Triton,支持其他推理后端】
本系列讲解重点是结合实际的应用场景以及
源码分析
,以及写一些triton周边的插件、集成等。非速成,适合同样喜欢深入的小
u013250861
·
2024-09-10 03:09
#
LLM/部署
深度学习
人工智能
webserver(1)
WebServer(1)主要内容+技术重难点一、代码+注释,可以运行通过(初始版1)locker.h
多线程
必须加锁操作#ifndefLOCKER_H#defineLOCKER_H#include#include
yundan1fengqing
·
2024-09-10 02:33
服务器
网络
c++
Tinywebserver数据库连接池
源码分析
day0
Tinywebserver的第一天源自github:GitHub-qinguoyi/TinyWebServer::fire:Linux下C++轻量级WebServer服务器这是项目的数据库连接池一共有两个文件,.h/.cpp先看md文档数据库连接池*单例模式,保证唯一*list实现连接池*连接池为静态大小*互斥锁实现线程安全直接看sql_connection_pool.cpp,在代码里看看具体是怎
winsons_lu
·
2024-09-10 02:02
数据库
oracle
Go语言 Go程基础
并行:多个CPU(多核)同时执行Go程介绍c语言里面实现并发过程使用的是
多线程
(C++的最小资源单元),进程go语言里面不是线程,而是go程==>goro
JSON_L
·
2024-09-10 00:05
GO
golang
开发语言
后端
python如何加速计算密集型任务?
方法:为了加速在Python中重复调用一个计算密集型函数的过程,可以采用以下策略:
多线程
或多进程:使用concurrent.futures模块中的T
老歌老听老掉牙
·
2024-09-09 22:24
python
计算
【HarmonyOS】- HAR与HSP区别及使用原则
文章目录知识回顾前言
源码分析
1.2.3.拓展知识总结知识回顾前言HAR与HSP
源码分析
1.2.3.拓展知识总结系统提供了两种共享包,HAR静态共享包和HSP动态共享包。
数的羊都睡了
·
2024-09-09 20:41
HarmonyOS
harmonyos
华为
鸿蒙
ArkTS
C++11
多线程
、进程详解(1)
进程线程进程:正在进行的可执行程序线程:进程中的执行路线关系:一个进程必然包含一个主线程,同一个进程中所有的线程共享内存。生成一个进程时其主线程自动从main()函数开始运行,当主线程从main()函数返回时,则整个进程执行完毕。分线程也需要从一个函数开始运行,此函数运行完毕时分线程执行完毕。并发方法:多进程并发与多进程并发。C++11中的thread库#include#includeusingn
大大大冯小小
·
2024-09-09 17:16
c++
开发语言
JAVA中的线程池说明一
在许多情况下,使用
多线程
可以替代进程来实现并发编程。
Petrichor-瑾
·
2024-09-09 16:42
JavaEE
java
开发语言
C++:多进程、
多线程
文章目录C++中的多进程与
多线程
详解一、前言二、多进程1.定义2.用法3.特点三、
多线程
1.定义2.用法3.特点四、多进程与
多线程
的相同点五、多进程与
多线程
的不同点六、示例:
多线程
与多进程对比1.多进程示例
小朱在敲代码
·
2024-09-09 15:35
c++
Android 面试题——如何徒手写一个非阻塞线程安全队列 ConcurrentLinkedQueue?_android concurrentlinkedqueue
队列容器设计若用数组作为队列的容器,就必须得加锁,因为数组是一块连续内存地址,
多线程
场景下,读写同一块内存地址不得不互斥地访问。链式结构链式结构就没有这个烦恼。
2401_84265972
·
2024-09-09 14:56
程序员
android
安全
fescar
源码分析
4-TM
一、概要说明这里重点分析下TM的实现。下面是TM的定义:TransactionManager(TM):明确全局事务的范围:开始一个全局事务,提交或者回滚一个全局事务简单来说,就是分布式事务的业务发起方。二、配置定义GlobalTransactionScanner。构造函数如下。applicationId和txServiceGroup我们这里可以理解为一个分布式事务的唯一标识。可以用于保存一个事务的
leiwingqueen
·
2024-09-09 12:39
python
多线程
类报错:group argument must be None for now
AssertionError:groupargumentmustbeNonefornowpython
多线程
类报错解决方法:加入初始化进程类python
多线程
类报错解决方法:加入初始化进程类//AnhighlightedblockclassMyThread
略X3
·
2024-09-09 11:09
python
探索PyQt:常用函数与代码示例
它包括了Qt的大部分模块,如核心功能、GUI组件、网络编程、
多线程
等。常用函数与参数解释
零 度°
·
2024-09-09 11:06
python
python
Java
多线程
:深入探索与详细解析
1.基础概念与重要性在Java编程中,
多线程
是并发编程的基石,它允许应用程序同时执行多个任务。这种能力不仅提高了程序的执行效率,还增强了其响应性和用户界面的流畅性。
m0_63550220
·
2024-09-09 09:23
java
开发语言
Redis单线程模型详解
这里写目录标题Redis单线程模型简介文件事件常用的文件事件处理器客户端与Redis通信的一次流程Redis为什么采用单线程模型Redis为什么要引入
多线程
呢?
TABE_
·
2024-09-09 09:52
Redis
redis
单线程模型
浅谈Unity协程的工作机制
Unity的协程通过C#的IEnumerator和yieldreturn实现,使得你可以在游戏主线程中以一种简洁的方式执行异步操作,而不需要使用复杂的
多线程
或回调。
王维志
·
2024-09-09 07:42
unity
windows
游戏引擎
Leveldb
源码分析
--9
6SSTable之36.5读取sstable文件6.5.1类层次Sstable文件的读取逻辑在类Table中,其中涉及到的类还是比较多的,如图6.5-1所示。图6.5-1Table类导出的函数只有3个,先从这三个导出函数开始分析。其中涉及到的类(包括上图中为画出的)都会一一遇到,然后再一一拆解。本节分析sstable的打开逻辑,后面再分析key的查找与数据遍历。6.5.2Table::Open()
sparkliang
·
2024-09-09 04:23
Leveldb
分布式系统
wpf 面试
1ref和out2对封装,继承,多态的理解3接口和抽象类的区别4trigger(4种)5什么是单例(手写),
多线程
调用单例时怎么保证唯一(lock)6自定义界面控件7改变界面控件的值,绑定方式或Dispatcher8
云淡风轻的小白
·
2024-09-09 04:51
鸿蒙轻内核M核
源码分析
系列二十 Newlib C
LiteOS-M内核LibC实现有2种,可以根据需求进行二选一,分别是musllibC和newlibc。本文先学习下NewlibC的实现代码。文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m获取。使用MuslC库的时候,内核提供了基于LOS_XXX适配实现pthread、mqeue、fs、semaphore、time等模块
OpenHarmony_小贾
·
2024-09-09 04:50
HarmonyOS
鸿蒙开发
OpenHarmony
harmonyos
c语言
移动开发
鸿蒙内核
鸿蒙开发
openharmony
开发语言
鸿蒙轻内核M核
源码分析
系列十七(2) 异常钩子函数的注册操作
本文中所涉及的源码,以OpenHarmonyLiteOS-M内核为例,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m获取。鸿蒙轻内核异常钩子模块代码主要在components\exchook目录下。异常钩子函数的注册、解注册、异常钩子类型定义在utils\los_debug.h|.c。1、异常钩子函数节点结构体和异常钩子函数节点数组在文件
OpenHarmony_小贾
·
2024-09-09 04:50
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
移动开发
openharmony
鸿蒙开发
鸿蒙内核
HarmonyOS
嵌入式硬件
鸿蒙轻内核M核
源码分析
系列十五 CPU使用率CPUP
CPUP(CentralProcessingUnitPercentage,CPU占用率)分为系统CPU占用率和任务CPU占用率。用户通过系统级的CPU占用率,判断当前系统负载是否超出设计规格。通过系统中各个任务的CPU占用情况,判断各个任务的CPU占用率是否符合设计的预期。系统CPU占用率是指周期时间内系统的CPU占用率,用于表示系统一段时间内的闲忙程度,也表示CPU的负载情况。系统CPU占用率的
OpenHarmony_小贾
·
2024-09-09 04:50
OpenHarmony
鸿蒙开发
HarmonyOS
harmonyos
鸿蒙内核
移动开发
数据结构
OpenHarmony
性能优化
嵌入式硬件
鸿蒙轻内核M核
源码分析
系列十六 MPU内存保护单元
本文主要分析鸿蒙轻内核MPU模块的的源码。本文中所涉及的源码,以OpenHarmonyLiteOS-M内核为例,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m获取。鸿蒙轻内核支持的ARMCortex-M芯片架构都支持MPU的,代码都是一样的,以kernel\arch\arm\cortex-m4\gcc\los_mpu.c为例进行讲解。1、
OpenHarmony_小贾
·
2024-09-09 04:50
HarmonyOS
鸿蒙开发
OpenHarmony
harmonyos
嵌入式硬件
鸿蒙嵌入式
鸿蒙开发
OpenHarmony
鸿蒙内核
移动开发
鸿蒙轻内核M核
源码分析
系列十三 消息队列Queue
队列(Queue)是一种常用于任务间通信的数据结构。任务能够从队列里面读取消息,当队列中的消息为空时,挂起读取任务;当队列中有新消息时,挂起的读取任务被唤醒并处理新消息。任务也能够往队列里写入消息,当队列已经写满消息时,挂起写入任务;当队列中有空闲消息节点时,挂起的写入任务被唤醒并写入消息。如果将读队列和写队列的超时时间设置为0,则不会挂起任务,接口会直接返回,这就是非阻塞模式。消息队列提供了异步
OpenHarmony_小贾
·
2024-09-09 04:20
鸿蒙开发
HarmonyOS
OpenHarmony
移动开发
鸿蒙内核
HarmonyOS
openharmony
鸿蒙开发
消息队列
嵌入式硬件
线程的死锁和并发安全
在
多线程
编程中,线程的死锁和并发安全是两个重要的概念。理解这两个概念并正确地管理它们,对于编写高效且可靠的并发程序至关重要。
榴月~
·
2024-09-09 02:11
Java
java
ArrayList 和 Vector 的区别是什么?
ArrayList和Vector都是集合框架中提供的动态数组实现类,它们的主要区别如下:1.线程安全性:Vector是线程安全的,即
多线程
情况下,Vector可以保证容器的同步性。
复活的夜神月
·
2024-09-08 23:15
Java容器面试题
java
python基础语法九-多进程和
多线程
书接上回:python基础语法一-基本数据类型python基础语法二-多维数据类型python基础语法三-类python基础语法四-数据可视化python基础语法五-函数python基础语法六-正则匹配python基础语法七-openpyxl操作excelpython基础语法八-异常1.多进程1.1创建多进程1)importmultiprocessing模块2)创建进程要执行的函数3)调用mult
yunduor909
·
2024-09-08 22:35
python
python
Rust:Restful API 服务程序开发详述
我曾经以为,
多线程
机制是后端设计的终极方法,后来才发现,异步机制才是榨干CPU运行效率资源的关键所在。我最初对于异步程序设计有误解,以为
多线程
架构就是异步编程。
许野平
·
2024-09-08 22:35
#
Rust
软件工程
Web
rust
restful
Warp
Tokio
hyper
C++ 满足某些条件可以当成rust 用
4.
多线程
使用shared_ptr或weak_ptr避免内存泄露。当然满足这些条件,有些程序编不了,但是如
flowesy
·
2024-09-08 20:25
c++
开发语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他