九鹤 九鹤
4年前
并发编程的基础概念
什么是线程?什么是进程?java可以开启线程吗?不能因为Java无法直接操硬件,他是运行在虚拟机上面的,什么是并发?什么是并行?并发就是多个线程去操作一个资源。并行是多个线程同时行,但是操作的资源不是同一个。线程的六个状态new(诞生)runnable(运行)Blocked(阻塞)waiiiing(等待)Tiemwaiing(超时等待)
Stella981 Stella981
4年前
AFNetworking源码分析
不用网络框架进行网络请求NSURLConnection的简单使用(下面的代码均只为了演示,更详细的使用方法请自行谷歌)NSURLConnection提供了两个类方法用于发起同步或异步请求,对于异步请求来说必然是在子线程中发起,若在主线程中发起异步网络请求会造成主线程阻塞,界面无响应,这就涉及到多线程编程。但多线程编程
Wesley13 Wesley13
4年前
JAVA基础系列:ThreadLocal
1. 思路1.什么是ThreadLocal?ThreadLocal类顾名思义可以理解为线程本地变量。也就是说如果定义了一个ThreadLocal,每个线程往这个ThreadLocal中读写是线程隔离,互相之间不会影响的。它提供了一种将可变数据通过每个线程有自己的独立副本从而实现线程封闭的机制。2.它大致的实现
Stella981 Stella981
4年前
Fortify漏洞之Insecure Randomness(不安全随机数)
继续对Fortify的漏洞进行总结,本篇主要针对InsecureRandomness漏洞进行总结,如下:1、InsecureRandomness(不安全随机数)1.1、产生原因:  成弱随机数的函数是random()。   电脑是一种具有确定性的机器,因此不可能
Stella981 Stella981
4年前
Netty 线程模型与Reactor 模式
前言     Netty 的线程模型是基于NIO的Selector 构建的,使用了异步驱动的Reactor 模式来构建的线程模型,可以很好的支持成百上千的SocketChannel 连接。由于READ/WRITE 都是非阻塞的,可以充分提升I/O线程的运行效率,避免了IO阻塞导致线程挂起, 同时可以让一个线程支持对多个客户端的连接So
Stella981 Stella981
4年前
Spring Boot 配置随机数技巧
SpringBoot支持在系统加载的时候配置随机数。添加config/random.properties文件,添加以下内容:随机32位MD5字符串user.random.secret${random.value}随机int数字user.random.intNumber${random.int}
Rust多线程:Worker 结构体与线程池中任务的传递机制
本文分享自天翼云开发者社区《》,作者:lnRust多线程:Worker结构体与线程池中任务的传递机制在实现一个多线程的Web服务器时,我们会遇到一个问题:如何在创建线程之后让它们在没有任务时保持等待状态,并且在任务到来时可以立即执行。这是一个典型的线程池设
京东云开发者 京东云开发者
10个月前
工作中对InheritableThreadLocal使用的思考
作者:京东保险王奕龙代码评审时,发现在线程池中使用InheritableThreadLocal上下文会使其中的线程变量失效,无法获取到预期的变量值,所以对问题进行了复盘和总结。1.先说结论InheritableThreadLocal只有在父线程创建子线程时
京东云开发者 京东云开发者
3个月前
工作中对InheritableThreadLocal使用的思考
作者:京东科技王奕龙代码评审时,发现在线程池中使用InheritableThreadLocal上下文会使其中的线程变量失效,无法获取到预期的变量值,所以对问题进行了复盘和总结。1.先说结论InheritableThreadLocal只有在父线程创建子线程时
京东云开发者 京东云开发者
3个月前
工作中对InheritableThreadLocal使用的思考
作者:京东科技王奕龙代码评审时,发现在线程池中使用InheritableThreadLocal上下文会使其中的线程变量失效,无法获取到预期的变量值,所以对问题进行了复盘和总结。1.先说结论InheritableThreadLocal只有在父线程创建子线程时