执行流程 1, 创建线程池后, 默认不会创建线程, 等到有任务带来才创建线程, 即一个线程处理一个任务 2, 当线程数量达到核心线程数时, 任务放进队列, 如果放入队列失败, 创建新线程处理任务(此时线程池线程数大于核心线程数) 3, 如果线程数大于最大线程数, 执行拒绝策略处理任务 构造方法 参数 ...
分类:
编程语言 时间:
2018-10-28 14:57:25
阅读次数:
194
一.httpd工作模型prefork:进程模型,两级结构,主进程master负责生成子进程,每个子进程负责响应一个请求worker:线程模型,三级结构,主进程master负责生成子进程,每个子进程负责生成多个线程,每个线程相应一个请求event:线程模型,三级结构,主进程master负责生成子进程,每个子进程响应多个请求二.I/O模型名词概念同步/异步:关注的是消息通信机制同步:synchrono
分类:
其他好文 时间:
2018-10-25 16:25:39
阅读次数:
303
前言WebDAV(Web-basedDistributedAuthoringandVersioning)一种基于HTTP1.1协议的通信协议。它扩展了HTTP1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可直接对WebServer直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。nginx编译时通过加入“–w
分类:
Web程序 时间:
2018-10-18 01:13:06
阅读次数:
516
一、存储引擎(了解) 现实生活我们用来存储数据的文件有不同的类型 , 每种文件类型对应各自不同的处理机制 : 比如处理文本用tet 类型, 处理表格用excel , 处理图片png等 . 数据库中的表也应该有不同的类型,表的类型不同 , 会对应mysql不同的存取机制,表类型又称为存储引擎. ps: ...
分类:
其他好文 时间:
2018-10-16 01:48:49
阅读次数:
144
Setting up the Libevent library1.重写log行为 2.重写异常退出动作: 3.重写内存管理方式: 4.锁和线程 libevent默认支持win和类unix的线程库, 如果想自己实现线程库的话需要实现: Locks locking unlocking lock allo ...
分类:
其他好文 时间:
2018-10-16 01:34:23
阅读次数:
245
Tasks Project Overview 1. Mooc Udacity RoboticsND: project 3 Coursera Robotics Motion Planning Homework Note --> Post Homework Note --> Post 2. Leetco ...
分类:
其他好文 时间:
2018-10-14 11:28:15
阅读次数:
203
1. 什么是线程?2. 什么是线程安全和线程不安全?3. 什么是自旋锁?4. 什么是Java内存模型?5. 什么是CAS?6. 什么是乐观锁和悲观锁?7. 什么是AQS?8. 什么是原子操作?在Java Concurrency API中有哪些原子类(atomic classes)?9. 什么是Exe ...
分类:
编程语言 时间:
2018-10-13 10:24:18
阅读次数:
152
因为ArrayBlockingQueue是一个阻塞的有界队列,可以直接使用它. ...
分类:
编程语言 时间:
2018-09-30 14:52:58
阅读次数:
188
上文我们描述了五中IO类型。第一种同步阻塞模型我们我们称之为BIO(Blocking IO), 第三种IO复用模型我们称之为NIO(Nonblocking IO)。 上图我们可以很容易的发现 BIO会为每个socket请求创建一个线程,而NIO可以通过一个线程处理多个请求。当然,我们可以为BIO构建 ...
分类:
其他好文 时间:
2018-09-26 17:13:34
阅读次数:
210
动态链接库引起的yum故障 公司开发安装程序后,执行yum报错,报错信息: /usr/lib64/python2.7/site packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback 原因是yum无法找到pycurl.so ...
分类:
其他好文 时间:
2018-09-24 00:38:53
阅读次数:
237