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
Java-多线程并发
互联网架构
多线程并发
编程高级教程(上)
基础篇幅:线程基础知识、并发安全性、JDK锁相关知识、线程间的通讯机制、JDK提供的原子类、并发容器、线程池相关知识点高级篇幅:ReentrantLock源码分析、对比两者源码,更加深入理解读写锁,JAVA内存模型、先行发生原则、指令重排序环境说明:idea、java8、maven第一章并发简介##01课程简介为什么要学习并发编程?方便实际开发面试课程特点适合群体##02什么是并发编程并发历史:早
DdShare
·
2023-07-22 00:31
细说Rust语言的所有权机制和线程安全
Point2.Rust新开一个线程3.Rc引用计数4.Arc原子引用计数5.Mutex给内存“上锁”6.Rust多线程共享读写的实现7.总结Rust所有权机制的设计是这门语言的最大特点,也是其内存安全和
多线程并发
安全的基石
liberg
·
2023-07-21 19:30
Rust编程小知识
rust所有权
rust线程安全
rust
Mutex
rust
Rc/Arc
rust
move语义
Java-
基础-数据类型-基本类型
概念说到基本类型就必须提及另外一个跟基本数据类型对应的一个类型:引用数据类型。Java中有两大数据类型内置数据类型也称基本数据类型引用数据类型也称对象数据类型这两种数据类型的变量统称为变量,变量是用来申请内存存储值的。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。Java语言提供八种基本类型:其中六种数字类型,一种字符类型以及一种布尔类型。其实严格来说void也算
杨昌沛
·
2023-07-21 16:09
Java并发编程详解
上一篇文章多线程相关概念的梳理(个人理解)主要从宏观层面上讲了
多线程并发
的一些概念,这篇文章则围绕Java,聊聊并发编程。
Ninja88!
·
2023-07-21 15:32
jvm
java
算法
Java-
并发编程知识点总结
目录:线程基础线程池各种各样的锁并发容器原子类Java内存模型线程协作AQS框架一、线程基础1.为什么继承runnable接口比继承Thread类的线程实现方式好?可以把不同的执行内容解耦,全责分明某些情况可以减少开销,提高性能(比如可用线程池中已有的线程去执行runnable,而不用重新创建线程)继承Thread类的单继承特性会限制代码的扩展性2.线程是如何在6种状态之间转化的?线程的6种状态:
王英豪
·
2023-07-21 04:14
java-
通过异或(xor)实现快速加解密的方法
java-
通过异或(xor)实现快速加解密的方法一、背景首次接触异或加解密最早是在宽带不普及的时候,当时用的是某个在线音乐软件看MV,上网不易想着把MV下载下来,日后离线看。
草青工作室
·
2023-07-20 23:27
java
开发语言
借助Redis锁,完美解决高并发秒杀问题
因为
多线程并发
问题,我们不得不在get()方法内部使用同步代码块。这样可以保证查询库存和减库存操作的原子性。p
Raral
·
2023-07-20 21:32
Java
多线程并发
实战详解,最详细
写在前面 你们好,我是小庄。很高兴能和你们一起学习Java。如果您对Java感兴趣的话可关注我的动态. 写博文是一种习惯,在这过程中能够梳理和巩固知识。这里写目录标题一、简介二、线程的状态1、New(新建)和运行2、start()和run()的区别3、线程的方法4、守护线程三、多线程的信息共享四、消费者-生产者案例五、Java多线程锁1、锁状态2、死锁3、饥饿锁4、Lock显示锁5、AQS算法
码农_小庄
·
2023-07-20 18:27
Java进阶篇
java
多线程
并发
java-
使用jacob突然报错Caused by: com.jacob.com.ComFailException: Can‘t co-create object
可能情况:java路径的bin和jre的bin都需要拷贝进去检查dll文件和jocob的jar版本是否一致检查system32是否拷贝了dll文件检查idea执行的java环境是否与当前java环境一致,有可能是一个主机上有多个java程序2023年7月14日11:52:09今日发现又报错了,当前环境windows,调用对象是outlook解决:重新启动了outlook问题解决了总结:大概率是,不
liwulin0506
·
2023-07-20 16:18
java
java
pycharm
开发语言
volatile 关键字 (详细解析)
目录前置知识共享变量不可见性JMMvolatile关键字使用volatile关键字加锁volatile关键字--更深入的问题volatile不保证原子性volatile禁止指令重排序前置知识共享变量不可见性在
多线程并发
执行下
Fearless____
·
2023-07-20 06:50
Java并发
java
jvm
开发语言
Java-
生成数据库设计文档
目录场景screw官网介绍接口编写场景在企业开发中,有些公司会要求开发人员编写数据库表结构文档,这项工作没啥技术含量而且很繁琐,每当有表发生更改时就需要维护这个文档,或者是需要交付数据库设计文档和导出数据库设计文档这类的需求,我们都可以通过github上的一个数据库文档生成工具screw,快速的生成数据库设计文档,以下内容是简单介绍了下screw以及如何编写导出数据库设计文档的接口。我不生产知识,
多加点辣也没关系
·
2023-07-20 05:38
入门教程
日常积累
java
数据库
开发语言
笔记:
多线程并发
编程(3)AQS、 syncionzerd 和volatie原理
AQS(队列同步器AbstractQueuedSynchronizer):AQS使用了模板方法设计模式实现AQS需要继承AbstractQueuedSynchronizer。最少实现tryAcquire与tryRelease/***Thesynchronizationstate.aqs里的关键成员变量通过检查与修改state状态来实现同步状态的更改*/privatevolatileintstate
盐海里的鱼
·
2023-07-20 04:41
【Java多线程】线程安全、线程同步、互斥锁、Lock锁
线程死锁五、释放锁六、Lock锁七、线程间通信等待唤醒机制各个线程是通过竞争CPU时间而获得运行机会的,什么时候得到CPU,占用多久,是不可预测的,一个正在运行的线程在什么地方被暂停是不确定的,所以,要解决
多线程并发
访问一个资源的安全性问题
南有乔木i
·
2023-07-19 23:56
JavaSE
java
多线程
互斥锁
Lock锁
同步
JAVA-
幂等性(二):高并发的系统如何保证幂等性
转载自:https://www.cnblogs.com/geyifan/p/6128425.html一、什么是幂等性幂等概念来自数学,表示N次变换和1次变换的结果是相同的。这里讨论在某些场景下,客户端在调用服务没有达到预期结果时,会进行多次调用,为避免多次重复的调用对服务资源产生副作用,服务提供者会承诺满足幂等。HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的
xishilife
·
2023-07-19 15:03
Java
架构
tomcat常见异常,tomcat解压后的目录
依赖jar文件log:日志文件(记录出错等信息)temp:临时文件workapps:可执行项目(将我们开发的项目放入该目录)work:存放由jsp翻译成的java,以及编译成的class文件(jsp-》
java
谷咕咕
·
2023-07-19 08:09
java
tomcat
java
服务器
【Java并发编程】导致JVM内存泄露的ThreadLocal详解
ThreadLocalMap),使得每个线程在某一时间访问到的并非同一个对象,这样就隔离了多个线程对数据的数据共享;ThreadLocal和Synchonized区别:ThreadLocal和Synchonized都用于解决
多线程并发
访问
Firechou
·
2023-07-19 05:58
#
Java基础
java
开发语言
ThreadLocal
并发编程
内存泄漏
Java-
基础-Iterator迭代器
目录1基本概念2常见方法3示例代码4for循环与Iterator迭代器5参考文献1基本概念JavaIterator(迭代器)是一种用于访问集合的方法,可用于迭代ArrayList、HashSet等集合中的数据。2常见方法JavaIterator(迭代器)常用方法:next():返回迭代器的下一个元素,并更新迭代器的状态。hasNext():判断集合中是否还有元素。remove():删除当前迭代器返
allan_ss
·
2023-07-19 04:04
java
开发语言
后端
Java-
抽象类和接口
文章目录抽象类接口1.什么是接口2.接口特性3.接口的使用抽象类当一个类含有抽象方法时,这个类需要被声明为抽象类。抽象类必须被继承,抽象方法必须被重写。抽象类和抽象方法需要被abstract关键字修饰,抽象方法没有方法体。抽象类不可以被new出对象,也就是不可以对其实例化。抽象方法只需被声明,而不需实现。abstractclassAnimal{privateStringname;Animal(St
宋夏寒
·
2023-07-19 00:42
Java
java
开发语言
Java-
多态
动态绑定和多态多态:对于同一个行为(方法),不同的子类对象具有不同的表现形式(方法重写)。动态绑定是指在执行期间(而非编译期间)判断所引用对象的实际类型,根据其实际的类型调用其对应的方法。条件:1)继承,2)重写,3)父类引用指向子类对象packageTestPolymoph;classAnimal{privateStringname;Animal(Stringname){this.name=na
宋夏寒
·
2023-07-19 00:11
Java
java
开发语言
Java-
异常
文章目录为什么要有异常处理机制异常的概念异常的分类异常的捕获和处理使用自定义的异常为什么要有异常处理机制异常处理机制可以让程序具有极好的容错性,让程序更加健壮。异常的概念运行期出现的错误Java异常是Java提供的用于处理程序中错误的一种机制。所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在)。设计良好的程序应该在异常发生时提供处理这些错误的方法,
宋夏寒
·
2023-07-19 00:08
Java
java
开发语言
Java多线程:使用多线程的几种方式以及对比
1、继承Thread类实现方式很简单,只需要创建一个类去继承Thread类然后重写run方法,在main方法中调用该类实例对象的start方法即可实现
多线程并发
。
Lemonrel
·
2023-07-18 09:49
【
Java-
数据结构】指定ArrayList 数组的大小有利于数据扩容和缩短耗时
关键“因为扩容操作涉及内存申请和数据搬移,是比较耗时的。所以,如果事先能确定需要存储的数据大小,最好在创建ArrayList的时候事先指定数据大小。”如下代码所示:ArrayListusers=newArrayList(10000);for(inti=0;i<10000;++i){users.add(xxx);}那么就意味着如果是大于10的数据量的时候最好提前设置好所需要的数据量。
ChrisEighteen18
·
2023-07-18 09:07
Java基础知识
java
数据结构
开发语言
Java虚拟机——经典垃圾收集器
3.5.2ParNew收集器ParNew收集器实质上是Serial收集器的
多线程并发
版本。除了使用多条线程进行垃圾收集之外,其余的行为包括Serial收集器可用
肇秋贰拾捌
·
2023-07-18 01:09
java
开发语言
性能优化
JAVA-
使用Stream流式思想处理数据
java.util.stream.Stream是java8新加入的最常用的流接口,并非函数式接口获取流常用的方式:所有的Collection集合都可以通过stream默认方法获取流:defaultStreamstream()Stream接口的静态方法of可以获取数组对应的流:staticStreamof(T...values)注意:Stream流属于管道流,只能被使用一次,第一个Stream流调用
我的棉裤丢了
·
2023-07-17 16:36
JAVA的进阶之路
java
Linux
多线程并发
运行原理+代码例程详解
文章目录线程创建和退出原理代码结果线程属性修改原理代码结果互斥锁原理代码结果信号量线程控制原理使用信号量线程互斥代码结果使用信号量线程同步代码结果小结分析“生产者消费者”实验问题分析代码结果分析线程创建和退出原理代码交叉编译#include#include#include/*thread1*/voidthread1(void){inti=0;for(i=0;i#include#include#in
“逛丢一只鞋”
·
2023-07-17 09:55
i.MX6
多线程
嵌入式
linux
操作系统
Java-
获取精确到秒的时间戳
1、什么是时间戳就是北京时间1970年01月01日08时00分00秒起至现在的总秒数2、Java获取精确到秒的时间戳方法获取总毫秒数的两个方法(1)newDate().getTime(2)System.currentTimeMillis()第二种的效率比较高。/***获取精确到秒的时间戳*/publicstaticStringgetTimeStamp(){returnString.valueOf(
林雉
·
2023-07-17 01:46
java
java
后端
Java-
回调函数
什么是回调函数调用可以分为三种模式,串行调用、异步调用、回调。这三种都是日常开发中常见到的方式。一个方法执行完,再执行下一个,串行逻辑会阻塞线程执行流程,等到所有逻辑执行结束,线程才会结束。异步执行是非阻塞类型。在主线程中,可以通过newThread的方式异步执行逻辑,通过Thread执行的逻辑不会阻塞主流程。类似日志上报,发送kafka消息等,都可以通过异步的方式处理。回调,就是客户程序A调用服
花无名v5
·
2023-07-16 21:38
java
java
kafka
开发语言
关于使用线程需要注意的地方,你都知道吗?
但是又无法避免采用多线程,因为采用
多线程并发
是能够从多核计算机获得最佳性能的一个有效途径。
你听___
·
2023-07-16 20:22
JAVA-
每日一面 2022-01-23
为什么选择Netty以及Netty的使用场景API使用简单,开发门槛低;功能强大,预置了多种编解码功能,支持多种主流协议;定制能力强,可以通过ChannelHandler对通信框架进行灵活的扩展;性能高,通过与其它业界主流的NIO框架对比,Netty的综合性能最优;成熟、稳定,Netty修复了已经发现的所有JDKNIOBUG,业务开发人员不需要再为NIO的BUG而烦恼;社区活跃,版本迭代周期短,发
YangEvol
·
2023-07-16 17:02
定个Java学习目标,希望能进菜鸟网络
基本类型、引用类型、多态底层、泛型底层、反射机制常见的集合类源码分析hashMap、hashTable、ArrayList、LinkedList推荐书籍:Java编程思想、EffectiveJava(深)
多线程并发
编程
奇乞祈兴
·
2023-07-16 11:02
Java-
反射机制
反射机制一、反射(Reflection)的概念1.1反射的出现背景1.2反射概述1.4反射的优缺点二、Class类的理解与类的加载2.1Class类的理解2.2Class类的常用API2.3类的加载2.4类加载器的分类(JDK8)三、反射的基本应用应用1:创建运行时类的对象应用2:获取运行时类的完整结构应用3:获取运行时类的指定结构一、反射(Reflection)的概念1.1反射的出现背景Java
Aimyon_36
·
2023-07-16 11:21
Java-Scala
java
jvm
c++
小猿圈分享-
java-
十进制、八进制、十六进制数互相转换
给大家分享一个可以节约我们时间的小程序,十进制、八进制、十六进制的互相转换,记得收藏哦。publicclassJZTurn{publicstaticvoidmain(String[]args){intnum2=1314521;System.out.println("十进制数:"+num2);System.out.println("十进制转换二进制:"+turn2(num2));System.out
小猿圈IT教育
·
2023-07-16 02:19
2023 Idea 热部署 JRebel 插件激活方法
JrebelLicenseServerforJava2.编译和打包cd/Users/daixiaohu/Desktop/JrebelLicenseServerforJavamvncleanpackage3.运行项目cdtarget/
java
两只Tigers跑得快
·
2023-07-16 00:26
JRebel
激活
完美解决linux下jdk版本与安装版本不一致
提出了另一种方法,该方法简单易行,容易理解.1.使用whichjava发现出来的是/usr/bin/java进入到/usr/bin后查看,发现java是一个链接.链接到了/etc/alternatives,如下:
java
qingbuyaodaowohao
·
2023-07-15 21:34
linux
linux
jdk
Linux下JDK版本与安装版本不一致问题
二.操作流程使用whichjava发现出来的是/usr/bin/java进入到/usr/bin后查看,发现java是一个链接.链接到了/etc/alternatives,如下:
java-
>/etc/alternati
狮子也疯狂
·
2023-07-15 21:57
bug修理厂
linux
java
运维
JVM内存模型来解释
多线程并发
常见问题和volilate,final,ThreadLocal
多核CPU运行时,每个CPU都会有自己的Cache,同样jvm运行时,每个线程的私有栈在使用共享数据时,都会现将共享数据拷贝进栈顶进行运算,这份数据其实是副本,因此也同样存在多个线程修改一个内存单元的一致性问题。JVM有自己的一套内存模型(Javamemorymodel,JMM)。JDK1.2开始有,JDK1.5(JSR-133)才逐渐成熟。JMM中将JVM内存分为“主存”和“工作内存”。Main
4553675200ad
·
2023-07-15 17:39
java-
课堂笔记
packagecom.company;//包包名/*public公有的,公共的其他的程序都可以访问,最大权限,其他程序都能访问class类Main类的名称,随便取名字,最好有意义的,一般要求首字母大写*/publicclassMain{/*public公有的,公共的其他的程序都可以访问,最大权限,其他程序都能访问static静态的没有对象可以调用,属于公共资源void主要的方法的名字,可以随便取,
末世岛屿_e627
·
2023-07-15 14:36
java-
字、字节、位、字长
字(字符)word字节byte位bit字长是指字的长度1字=2字节(1word=2byte)1字节=8位(1byte=8bit)一个字的字长为16一个字节的字长是8bps是bitspersecond的简称。一般数据机及网络通讯的传输速率都是以「bps」为单位。如56Kbps、100.0Mbps等等。Bps即是Bytepersecond的简称。而电脑一般都以Bps显示速度,如1Mbps大约等同128
onlyHalfSoul
·
2023-07-15 08:51
10道
多线程并发
面试题
1.synchronized的实现原理以及锁优化?synchronized的实现原理synchronized作用于「方法」或者「代码块」,保证被修饰的代码在同一时间只能被一个线程访问。synchronized修饰代码块时,JVM采用「monitorenter、monitorexit」两个指令来实现同步synchronized修饰同步方法时,JVM采用「ACC_SYNCHRONIZED」标记符来实现
cuixiaoyan
·
2023-07-14 23:29
Java-
异或运算详解
基本概念异或运算,符号为XOR或者^,是二进制的运算,运算法则为相同为0,不同为1,我记得时候反正总会忘(和同或记反),所以这里直接把异或理解为"不进位的二进制相加".举个栗子:1000111和1110001异或按照不进位相加的运算方法:最小位都是1相加为2也就是10(二进制运算),因为是不进位的运算所以直接本位为0就可以了,其他位如法炮制:0110110.重要性质异或运算符合交换律和结合律交换律
Java学会 工资翻倍
·
2023-07-14 21:33
数据结构
java
eclipse : sun.misc.BASE64Encoder找不到jar包的解决方法
sun.misc.BASE64Encoder找不到jar包比较好的解决办法按顺序依次操作:Windows->Preferences->
Java-
>Compiler->Errors/Warnings。
sayyy
·
2023-07-14 20:05
eclipse
eclipse
java-
使用反射给属性赋值(适用于多对象共用一个处理参数的方法)
整体的三个测试代码块。我的需求是想一个方法可以根据传入对象的不同,进行公共的操作。这个例子创建了一个User对象,有两个属性,分别是id和name。需要给这两个属性进行赋值操作。而操作的方法则是公共的方法,不但是可以为这个对象操作,其他的对象只要有这两个属性也可以实现操作。我之前一直不明白这个类型怎么去做控制,因为传入的对象是不同的。其实最核心的点是两个,一个是类类型的控制,第二个是反射赋值。第一
王德法_一直有你
·
2023-07-14 18:32
java进阶
java
JAVA-
日志的异步收集输出
记录一下最近做的一个Web项目中的日志问题项目使用的日志体系如下:使用sl4j作为门面,log的实际实现是log4j问题如下:在请求高并发的情况下,推测日志会出现串的情况。举个例子:publicvoidecho(){log.info("Functionbegin");//...省略若干行代码...log.info("Functionrunning");//...省略若干行代码...log.info
纵马饮白虹
·
2023-07-14 16:00
j2ee
日志
log
并发日志
并发
MySQL阶段DAY20(附笔记)
】:工厂模式学习知识结构如下:(一)、单例模式1.Single类:使用懒汉式:对象的延迟加载,安全的,高效的应用双重判断提升效率和安全性packagesingleton;/**单例设计模式之饿汉式(在
多线程并发
时不会有问题
QuitXIN
·
2023-07-14 15:11
MYSQL
笔记
Java-
线程同步(2)
Java-
线程同步(1)说到Lock对象,但是和synchronized相比似乎只是多了一个tryLock和lockInterruptibly功能?并不是这样,我们接着看Lock更加高大上的用法。
w小强
·
2023-07-14 14:24
Java-
正则表达式验证邮箱
请根据给出的正则表达式来验证邮箱格式是否合法,如果用户输入的格式合法则输出「邮箱格式合法」,否则输出「邮箱格式不合法」。importjava.util.Scanner;importjava.util.regex.*;publicclassMain{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);Stri
是席木木啊
·
2023-07-14 07:11
Java
java
图形验证码
Servlet
MyEclispe 代码自动提示显示“No Default Proposals”解决方法
(1),Window->Preferences->
Java-
>Editor->ContentAssist->Advanced里的「Selecttheproposalkindscontainedinthe'default'contentassistlist
雪落夜
·
2023-07-14 01:14
Java
react 初学(1)
create-react-appnpminstall-gcreate-react-app如果出现报错请参考create-react-app-V报错无法将“create-react-app”项识别为cmdlet、函数、脚本文件或可运行程序的名称_
Java
Java-请多指教
·
2023-07-13 21:26
react
react.js
javascript
什么是锁(Lock)
锁通常用于解决
多线程并发
访问共享资源时可能出现的数据竞争和不一致性问题。
wzxue1984
·
2023-07-13 20:53
java
数据库
开发语言
Java-
通过IP获取真实地址
文章目录前言功能实现测试前言最近写了一个日志系统,需要通过访问的IP地址来获取真实的地址,并且存到数据库中,我也是在网上看了一些文章,遂即整理了一下供大家参考。功能实现这个是获取正确IP地址的方法,可以直接使用的。publicstaticfinalStringUNKNOWN="unknown";publicstaticfinalStringX_FORWARDED_FOR="x-forwarded-
多加点辣也没关系
·
2023-07-13 17:45
踩坑系列
日常积累
java
tcp/ip
网络
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他