1.简介 线程池可以简单看做是一组线程的集合,通过使用线程池,我们可以方便的复用线程,避免了频繁创建和销毁线程所带来的开销。在应用上,线程池可应用在后端相关服务中。比如 Web 服务器,数据库服务器等。以 Web 服务器为例,假如 Web 服务器会收到大量短时的 HTTP 请求,如果此时我们简单的为 ...
分类:
编程语言 时间:
2020-03-18 21:43:12
阅读次数:
61
目录 1 简介 2 背景介绍 1.简介 CAS 全称是 compare and swap,是一种用于在多线程环境下实现同步功能的机制。CAS 操作包含三个操作数 – 内存位置、预期数值和新值。CAS 的实现逻辑是将内存位置处的数值与预期数值想比较,若相等,则将内存位置处的值替换为新值。若不相等,则不 ...
分类:
编程语言 时间:
2020-03-18 21:36:50
阅读次数:
73
一、概述 Service是Android的四大组件之一,我们可以利用它开启一个后台服务,Service的优先级比较高,一旦其在后台运行即使App处于后台则Service运行的任务也不容易被杀死。了解Service的工作原来除了可以加深对底层的Service机制的理解以外还可以为当前比较流行的热更新做 ...
分类:
移动开发 时间:
2020-03-12 11:29:58
阅读次数:
57
Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。本文从底层原理分析 Nginx 为什么这么快! Nginx 的进程模型 Nginx 服务器,正常运行过程中: 多进程:一个 Master 进程、多个 Worker 进程。 Master 进程:管理 Worker 进程。对外接口 ...
分类:
其他好文 时间:
2020-03-06 11:19:44
阅读次数:
52
linux下编译hello.c 程序,使用gcc hello.c,然后./a.out就能够执行;在这个简单的命令后面隐藏了很多复杂的过程,这个过程包含了以下的步骤: 预处理: 宏定义展开,全部的#define 在这个阶段都会被展开 预编译命令的处理,包含#if #ifdef 一类的命令 展开#inc ...
分类:
系统相关 时间:
2020-03-02 10:43:32
阅读次数:
71
推荐阅读:阿里二面凉经:虚拟机+MySQL+中间件+设计模式+缓存+Spring+并发等难题,全部迎刃而解后端开发中大家肯定遇到过实现一个线程安全的计数器这种需求,根据经验你应该知道我们要在多线程中实现共享变量的原子性和可见性问题,于是锁成为一个不可避免的话题,今天我们讨论的是与之对应的无锁CAS。本文会从怎么来的、是什么、怎么用、原理分析、遇到的问题等不同的角度带你真正搞懂CAS。为什么要无锁我
分类:
其他好文 时间:
2020-02-25 20:28:55
阅读次数:
79
CSRF攻击概述: CSRF(Cross Site Request Forgery 跨站域请求伪造)是一种网站攻击的方式,它在2007年曾被列为互联网20大安全隐患之一。其他的安全隐患,比如SQL脚本注入,跨站域脚本攻击等在近年来已经逐渐为众人熟知,很多网站也都针对他们进行了防御。然而,对于大多数人 ...
分类:
Web程序 时间:
2020-02-22 21:55:00
阅读次数:
70
在本版本中引入了SPI机制,关于Java的SPI机制与Dubbo的SPI机制在以前的文章中介绍过。 传送门: "Dubbo的SPI机制与JDK机制的不同及原理分析" 因为设计的RPC框架是基于Spring的,时常会遇到依赖注入问题。Spring中也有SPI机制,但是它有有个缺点,就是在利用SPI机制 ...
分类:
其他好文 时间:
2020-02-20 00:16:42
阅读次数:
67
从今天开始,将会逐步介绍关于DUbbo的有关知识。首先先简单介绍一下DUbbo的整体概述。 概述 Dubbo是SOA(面向服务架构)服务治理方案的核心框架。用于分布式调用,其重点在于分布式的治理。 简单的来说,可以把它分为四个角色。服务提供方(Provider)、服务消费方(Consumer)、注册 ...
分类:
其他好文 时间:
2020-02-20 00:13:27
阅读次数:
93
一、概述 本节将分析RxJava2的线程切换模型。通过对线程切换源代码的分析到达对RxJava2线程切换彻底理解的目的。通过对本节的学习你会发现,RxJava2线程切换是如此的简单,仅仅是通过两个操作符就能完成从子线程到主线程,或者主线程到子线程,再或者从子线程到子线程的切换。对应的操作符为:obs ...
分类:
编程语言 时间:
2020-02-19 16:43:51
阅读次数:
247