ICode9

精准搜索请尝试: 精确搜索
  • Vector为什么是线程安全的?2022-08-20 15:02:01

    因为官方在涉及线程不安全的操作上都加了synchronized关键字,相当于加了一把锁; 这种线程安全不是绝对的,因为这种方式是方法级的,添加和删除的方法还是可以同时进行,可能存在添加时,找到了数组下标,但是进行添加时,数组下标已经被删除了,此时会有数组越界异常; 所以使用Vector做复杂操作的

  • 聊聊ThreadLocal的使用2022-08-20 14:30:31

    1. 什么是ThreadLocal ThreadLocal的作用是提供线程内的局部变量,在多线程环境下访问时能保证各个线程内的ThreadLocal变量各自独立。 也就是说,每个线程的ThreadLocal变量是自己专用的,其他线程是访问不到的。 2. 应用场景 多线程环境下存在对非线程安全对象的并发访问,而且该对

  • 锁与并发 synchronized(1)2022-08-20 12:04:30

      1.synchronized 锁的升级过程:         由于并发量不同,争抢的激烈程度不同出现锁的升级。   锁升级不可逆。   2.为什么要使用锁。   对共有资源的操作,因为对同一资源涉及多数据的复制,使用,回写等不能保证资源的原子性。 即围绕共有资源的原子性和有序性,可见性。   

  • 锁和并发(2)AQS2022-08-20 12:03:04

    1.AQS具备的特性:   阻塞等待队列   共享/独占   公平/非公平 可重入   允许中断   2.Aqs的抽象模型:      2.1.ReentrantLock  juc lock接口实现,实现是基于AQS,需要手动加锁跟解锁  ReentrantLock lock(),unlock()     悲观锁  独占 AQS         1

  • ThreadLocal介绍2022-08-20 10:00:08

    介绍 ThreadLocal是一个线程变量工具类,提供了线程局部变量,就是为每一个使用该变量的线程都提供一个变量值的副本。我们可以利用ThreadLocal创建只能由同一线程读和写的变量。因此就算两个线程正在执行同一段代码,并且这段代码具有对ThreadLocal变量的引用,这两个线程也无法看到彼此

  • Java开发岗面试题小结2022-08-19 21:04:14

    8种基本数据类型 类型名称 关键字 占用内存 取值范围 字节型 byte 1 字节 -128~127 短整型 short 2 字节 -32768~32767 整型 int 4 字节 -2147483648~2147483647 长整型 long 8 字节 -9223372036854775808L~9223372036854775807L 单精度浮点型 float 4 字节 +/-3.

  • ThreadLocal2022-08-19 15:32:48

      问题描述,在工作中一次请求 请求接口一 ,将request保存到了ThreadLocal,调用接口二,而接口二也存入了ThreadLocal,接口二完成之后将ThreadLocal  romove 了,在此回到接口一时数据已经没有了,导致了问题.  然后就把接口二的 ThreadLocal.remove() 这行代码干掉了......  T

  • IDEA的debug调试技巧2022-08-19 08:30:50

    来自B站 全网最实用的 IDEA Debug 调试技巧(超详细案例) https://www.bilibili.com/video/BV1xa411Y72S?spm_id_from=333.337.search-card.all.click&vd_source=a3ca5632ce12ee8045822c508dc81551 方法断点 方法断点是菱形/正方形的 1、在接口的方法上打断点 虽然我们在接口里的方

  • 三个线程交替打印ABC100次问题思考2022-08-19 01:02:42

    如题:使用三个线程交替打印ABC,直至100次代码实战 方法一: 使用notify()、wait()方法 public class PrintAbc { /** * 唤醒线程的状态值 state: threadA = 0, threadB = 1, threadC =2, */ int state = 0; /** * 循环技术,初始值0 */ int count

  • Java基础知识整理(部分)2022-08-19 00:32:15

    继承的本质是对某一类的抽象,从而实现对现实世界更好的建模1.extends的意思是扩展,子类是父类的扩展2.Java中类只有单继承,没有多继承在Java中,所有类都默认直接或间接继承Object类,Object是所有类的父类 子类继承了父类,就会拥有父类的全部方法 super注意点 1.super调用父类的构造方

  • JAVA之线程及多线程实现2022-08-19 00:31:22

    java的线程是什么 1 线程是一个程序的一条执行路径。 我们之前启动程序后。main方法其他是一条独立的执行路径。 2 JAVA的多线程 JAVA的多线程是指从软硬件实现多条执行路径。a既可以上传文件,也可以下载文件。 3 JAVA多线程创建方式   方式1 继承thread类   class c1 extends

  • 彻底了解线程池的原理——40行从零开始自己写线程池2022-08-18 19:00:53

    彻底了解线程池的原理——40行从零开始自己写线程池 前言 在我们的日常的编程当中,并发是始终离不开的主题,而在并发多线程当中,线程池又是一个不可规避的问题。多线程可以提高我们并发程序的效率,可以让我们不去频繁的申请和释放线程,这是一个很大的花销,而在线程池当中就不需要去频繁

  • 从操作实例“UI界面实现SSH登录服务器并执行命令监控”中学习到的线程与线程间参数传递方法记录2022-08-18 17:30:22

    从操作实例“UI界面实现SSH登录服务器并执行命令监控”中学习到的线程与线程间参数传递方法记录; https://www.cnblogs.com/babashi9527/p/16594881.html 参照此代码中的实例,线程主要以启用线程传递函数方式运行对应的执行内容,而线程间的参数传递依托于队列方式实现; 1、多线程 使用

  • winform开启线程实时输出日志到控件2022-08-18 09:33:38

    1、声明委托   public delegate void ShowMessage2Form(string message); 2、声明事件 static public event ShowMessage2Form ShowMessage; 3、事件绑定 LogHelper.ShowMessage += ShowLog; 4、方法实现:实时显示到主窗口控件上 private void ShowLog(string message)

  • 多线程.线程同步2022-08-18 03:00:36

    同步方法:synchronized 同步块:synchronized(Obj){} 并发:多个线程操作同一个资源 队列和锁 每个对象都有一个锁,sleep不会释放锁 由于同一进程的多个线程共享同一块存储空间,在带来方便发同时,也带来了访问冲突问题,为了保证数据在方法中被访问时的准确性,在访问时加入锁机制synchroniz

  • MySQL IO线程及相关参数调优 update (进行大量数据更新引起的性能低)2022-08-17 23:30:27

    日志内容 I/O thread 0 state: waiting for completed aio requests (insert buffer thread) I/O thread 1 state: waiting for completed aio requests (log thread) I/O thread 2 state: waiting for completed aio requests (read thread) I/O thread 3 state: waiting for com

  • 多线程.守护线程2022-08-17 23:01:39

    daemon守护 线程分为用户线程和守护线程 虚拟机必须确保用户线程执行完毕 虚拟机不用等待守护线程执行完毕 如,后台记录操作日志,监控内存,垃圾回收等待... package oop.state; //测试守护线程 //上帝守护你 public class TestDaemon { public static void main(String

  • ForkJoinPool源码分析之一(外部提交及worker执行过程)2022-08-17 22:30:30

    在前文中介绍了如何使用ForkJoinPool和ForkJoin的一些基本原理。现在继续来分析ForkJoin,原本计划从源码开始分析。但是ForkJoinPool的源码太过复杂。后续得分好几部分来讲解。今天先做一个总体的介绍。 一、ForkJoinPool总体介绍 在java中运行ForkJoinPool,经过对源码的分析,实际上,

  • 20220806-第八组-王凌霄-学习笔记2022-08-17 22:05:14

    List:数据是有顺序(添加的先后顺序)的,数据是可以重复的 ArrayList:内部结构是数组,比较适合做高频率的查找、遍历 LinkedList:双向链表,比较适合做高频率的新增和删除 继承和实现叫功能的扩展(子类独有的方法) 面试题 Collection和map接口的区别 Collection是存储单值的最大父接口 Map是存

  • 性能测试理论22022-08-17 20:04:57

    压力测试与负载测试得区别是什么?### 负载测试​    在被测系统上持续不断的增加压力,直到性能指标(响应时间等)超过预定指标或者某种资源(CPU&内存)使用已达到饱和状态。核心是找到系统的处理极限,为系统调优提供数据,从而达到了解系统性能的容量### 负载测试的目的:​    1、验

  • 使用jmeter工具实现性能测试2022-08-17 19:04:24

    使用JMeter工具做性能测试   使用Jmeter工具做性能测试 JMeter执行原理 JMerer通过线程组来驱动多个(也可以理解为LR⼯具⾥⾯的虚拟⽤户)运⾏测试脚本对⽬标服务器发起⼤量的⽹络请求,在每个客户端上可以运⾏多个线程组,也就是说⼀个测试计划⾥⾯可以包含N个线程组。 线程数 ⼀个

  • 04 - volatile 原理分析2022-08-17 17:02:04

    什么是 Volatile 能够保证线程可见性,当一个线程修改主内存中共享变量时,能够保证对另外一个线程可见性, 但是注意他不能够保证共享变量的原子性问题。 Volatile的特性 可见性 能够保证线程可见性,当一个线程修改主内存中共享变量时,能够保证对另外一个线程可见性, 但是注意他不能够保

  • 队列:队列在线程池等有限资源池中的应用2022-08-17 13:34:31

    目录如何理解“队列”?顺序队列和链式队列循环队列阻塞队列和并发队列阻塞队列并发队列线程池没有空闲线程时,新的任务请求线程资源时,线程池该如何处理?各种处理策略又是如何实现的呢? 当我们向固定大小的线程池中请求一个线程时,如果线程池中没有空闲资源了,这个时候线程池如何处理这个

  • Unity-进程/线程/协程2022-08-17 13:30:19

    进程 进程是计算机中的程序关于某数据集合上的一次运动活动,是系统进行资源分配和调度的基本单元,是操作系统结构的基础。 // 打开指定程序 Process p = Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe"); // 杀死携程 p.Kill(); // 获得当前运行的全部进

  • 03 - 多线程之间如何实现通讯2022-08-17 13:00:51

    Java 多线程之间如何实现通讯 多个线程之间通过wait,notify通讯 public class Thread007 { class Res { public String userName; public char userSex; public boolean flag; } class InputThread extends Thread { private Res res

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有