一、进程和线程 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。 线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。 线程和进程一样分为五个阶段:创建、就绪、运行、阻塞、终止。 多进程是指操作 ...
分类:
编程语言 时间:
2020-08-31 11:54:36
阅读次数:
42
程序员经常要面临的一个问题就是:如何提高程序性能?这篇文章,我们循序渐进,从内存、磁盘I/O、网络I/O、CPU、缓存、架构、算法等多层次递进,串联起高性能开发十大必须掌握的核心技术。I/O优化:零拷贝技术I/O优化:多路复用技术线程池技术无锁编程技术进程间通信技术RPC&&序列化技术数据库索引技术缓存技术&&布隆过滤器全文搜索技术负载均衡技术准备好了吗,坐稳了,发
分类:
其他好文 时间:
2020-08-24 16:28:12
阅读次数:
61
进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。 进程是计算机系统分配资源的最小单位。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。 为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。 这些进程 ...
分类:
其他好文 时间:
2020-08-11 15:51:50
阅读次数:
85
进程通信(Interprocess Communication,IPC)是一个进程与另一个进程间共享消息的一种通信方式。消息(message)是发送进程形成的一个消息块,将消息内容传送给接收进程。IPC机制是消息从一个进程的地址空间拷贝到另一个进程的地址空间。 进程通信的目的: 1、数据传输 一个进 ...
分类:
系统相关 时间:
2020-08-11 14:19:23
阅读次数:
90
在现代计算机上,一个任务的完成,往往需要多个进程协调,这时进程间如何交流就成了必须解决的问题。实现进程间通信(IPC)有很多方法,下面简单介绍一下各个通讯方式的原理,不讲具体代码实现。 管道 管道一般指无名管道(还有另一种叫有名管道),是Unix系统最古老的进程通信方式。管道通信有以下特点: ? 管 ...
分类:
系统相关 时间:
2020-07-26 23:09:49
阅读次数:
97
linux进程间通信(IPC inter-process communication)有几种方式,下面将将简单的简述一下: 一。管道(pipe) 管道是Linux支持的最初IPC方式,管道可分为无名管道,有名管道等。 (一)无名管道,它具有几个特点: 1) 管道是半双工的,只能支持数据的单向流动;两 ...
分类:
系统相关 时间:
2020-07-26 15:30:39
阅读次数:
99
作为一名合格的程序猿/媛,对于进程、线程还是有必要了解一点的,本文将从下面几个方向进行梳理,尽量做到知其然并知其所以然: 进程和线程的概念和关系 进程演进 进程间通信 理解底层基础,助力上层应用 进程保护 进程和线程的概念和关系 用户下达运行程序的命令后,就会产生进程。同一程序可产生多个进程(一对多 ...
分类:
系统相关 时间:
2020-07-24 16:40:45
阅读次数:
92
为什么需要序列化 我们知道,java程序在运行时,对象是在对上创建的,如果程序停止了,那么这个对象也不复存在了。当我们需要将对象存储在硬盘上时,就需要序列化的技术了。 序列化就是一种将对象转换成字节序列的过程。反序列化就是将字节序列代表的对象恢复成原来的样子。通过序列化与反序列化,我们可以实现进程间 ...
分类:
编程语言 时间:
2020-07-21 11:37:19
阅读次数:
56
使用示例: $atomic = new Swoole\Atomic(); $serv = new Swoole\Server('127.0.0.1', '9501'); $serv->set([ 'worker_num' => 1, 'log_file' => '/dev/null' ]); // ...
分类:
系统相关 时间:
2020-07-19 23:48:19
阅读次数:
94
进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。 以Linux ...
分类:
系统相关 时间:
2020-07-16 18:08:25
阅读次数:
85