BichonCode BichonCode
4年前
操作系统
一、进程的相关概念1.1定义进程用来描述一个程序及其执行过程中的信息,即描述一个执行中的程序,所以才将其命名为进程,即进行中的程序,也可以说进程是程序的一次执行。1.2进程的状态操作系统中的进程状态主要包括∶运行态——当前占有CPU、正在执行的进程状态;就绪态——一个进程具备了所有可以执行的条件,只要获得CPU就能开始执
Wesley13 Wesley13
3年前
java多线程的学习
1,进程和线程 1,一个进程和另外一个进程的之间是隔离的。但是对cpu来说都是一样的。一边打游戏,一边看电影。2,两个线程是共享着同一片资源,在同一个进程里面,例如在腾讯视频,同时打开两部电影。3,他们的目的都是充分的利用cpu。4,java虚拟机就是一个进程。5,线程的实现两种方式 Runnable接口,继承Threa
Stella981 Stella981
3年前
Redis主从自动切换原理
Redis主从自动切换原理复制原理1:当一个从数据库启动时,会向主数据库发送sync命令,2:主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来3:当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。4:从数据库
Easter79 Easter79
3年前
String.intern()引发的性能问题
项目代码中用到反射,伴随大量的NoSuchFieldException异常,发现cpu飙高,排查后发现跟String.intern有关。在Class中有连个常见的方法:Ø public Field getField(String name)Ø getMethod(String name, Class<?... parameterTypes)
Stella981 Stella981
3年前
Redis 总结精讲
本文围绕以下几点进行阐述1、为什么使用redis2、使用redis有什么缺点3、单线程的redis为什么这么快4、redis的数据类型,以及每种数据类型的使用场景5、redis的过期策略以及内存淘汰机制6、redis和数据库双写一致性问题7、如何应对缓存穿透和缓存雪崩问题8、如何解决redis的并发竞争问题
Wesley13 Wesley13
3年前
NGINX 详细配置信息
运行用户usernobody;启动进程,通常设置成和cpu的数量相等worker_processes1;全局错误日志及PID文件error_loglogs/error.log;error_loglogs/error.lognotice;err
Wesley13 Wesley13
3年前
Java多线程(一)、理解进程与多线程的概念及关系
一、什么是进程?简单理解,在多任务系统中,每个独立运行的程序就是一个进程,也可以理解为当前正在运行的每个程序都是一个进程。我们现在使用的操作系统大都是多任务系统的,如:Windows、Linux、MacOSX、Unix等。因为单个CPU在同一时刻只能执行一个程序,这是铁律。但在系统中单个CPU又怎么能同时执行多个程序呢?实际情况这是由操作系
Stella981 Stella981
3年前
Redis应用学习——缓存的使用与设计
1\.缓存的收益与成本  1.收益:通过缓存加速读写速度。在内存中读写比硬盘速度快降低数据库服务器的负载。比如业务端的请求的数据大多数都由Redis服务器来处理,大大减轻MySQL服务器的压力  2.成本:数据不一致问题,比如Redis服务器与数据库服务器之间的某些数据可能会发
Wesley13 Wesley13
3年前
Java并发编程基础
什么情况下应该使用多线程:线程出现的目的是什么?解决进程中多任务的实时性问题?其实简单来说,也就是解决“阻塞”的问题,阻塞的意思就是程序运行到某个函数或过程后等待某些事件发生而暂时停止CPU占用的情况,也就是说会使得CPU闲置。还有一些场景就是比如对于一个函数中的运算逻辑的性能问题,我们可以通过多线程的技术,使得一个函数中的多
Stella981 Stella981
3年前
AndroidUniversalImageLoader图片异步加载类库的使用
开发App过程中,免不了要进行网络请求操作进行数据交换,比如下载图片,如果自己写一个下载图片的类进行操作的话,要考虑太多太多内容,必须线程池,内存溢出,图片磁盘缓存操作,图片内存缓存操作等等,相当麻烦。好在伟大的开源者们已经写好了一个比较完美的开源类库供大家使用Android(https://www.oschina.net/action/GoTo