进程间通信原因因为每一个进程都是拥有一个独立的虚拟地址空间的,促使进程独立,导致了进程之间需要协作。进程间通信分为数据传输-----管道,消息队列数据共享-----共享内存进程控制-----信号量首先先谈谈管道和共享内存管道---匿名管道,命名管道本质:管道其实就是一块内存,是内核当中的缓冲区匿名管道---没有标识特性:具有亲缘关系的进程间通信半双工,数据只能有一个流向提供字节流服务自带同步与互斥
分类:
系统相关 时间:
2020-01-30 12:54:12
阅读次数:
109
输入格式: 要求输出格式:对每个测试用例输出 2 行,第 1 行是成绩最高学生的姓名和学号,第 2 行是成绩最低学生的姓名和学号,字符串间有 1 空格。 注意的点: 1. cin 与 getline 函数一起使用时,输入缓冲区中换行符的问题。需要在 getline 之前使用 cin.ignore() ...
分类:
编程语言 时间:
2020-01-29 23:56:48
阅读次数:
136
本例程利用 FAST/AGAST 算法进行特征提取,并且进行目标追踪,仅支持灰度图。 注意:本例程会把程序运行最开始的十秒左右出现的物体作为目标特征,请在程序运行的最开始,将目标物体放在摄像头中央识别,直至出现特征角点,证明已经识别记录目标特征。 匹配过程中,如果画面出现十字和矩形框,证明匹配成功。 ...
分类:
其他好文 时间:
2020-01-29 21:53:45
阅读次数:
408
问答题 1. 一些字符串函数,如strcpy等,使用时没有对输入数据长度等进行合法性检测,容易造成缓冲区溢出,被黑客利用; 因为else总是与最近的if配对,如果不能熟练使用,else有时难以表达原意,产生错误; 数组越界不会报错,比较难发现; 指针对于初学者来说容易出错,可能会访问非法内存,造成数 ...
分类:
其他好文 时间:
2020-01-29 10:37:48
阅读次数:
92
通过getchar来取代cin不断对缓冲区的操作,加快速度 调用 即可 ...
分类:
编程语言 时间:
2020-01-28 23:00:47
阅读次数:
70
首先了解下数据在client与server端的通信中的收发过程 考虑单向的数据流,即 即A(客户端)向B(服务端)发送数据。 在ProgramA中,定义一个数组char buf[100] = "tcp" ;那么buf就是应用程序缓冲区,即图中A对应的圆内存,send / write函数对应上面蓝色的 ...
分类:
其他好文 时间:
2020-01-28 15:43:36
阅读次数:
145
缓存机制介绍 在Linux系统中,为了提高文件系统性能,内核利用一部分物理内存分配出缓冲区,用于缓存系统操作和数据文件,当内核收到读写的请求时,内核先去缓存区找是否有请求的数据,有就直接返回,如果没有则通过驱动程序直接操作磁盘。缓存机制优点:减少系统调用次数,降低CPU上下文切换和磁盘访问频率。CP ...
分类:
系统相关 时间:
2020-01-28 14:15:09
阅读次数:
146
avcodec_send_packet(AVCodecContext *avctx, const AVPacket *avpkt): 1)将原始数据包作为解码器的输入 2)该函数在内部会复制AVCodecContext的相关字段(具体有哪些字段,起什么用,俺也不知道。。。),这些字段会影响每个包的解 ...
分类:
其他好文 时间:
2020-01-28 09:26:23
阅读次数:
416
NIO线程模型 什么是NIO线程模型? 上图是NIO的线程模型, 基于select实现, 这种线程模型的特点: 多条channel通过一个选择器和单挑线程绑定, 并且在这种编程模型中, Channel中相关业务逻辑不允许存在耗时的任务 , 如果一定会有耗时的逻辑, 请将它们放置到线程池中去运行, 因 ...
分类:
其他好文 时间:
2020-01-28 09:23:31
阅读次数:
69
字符串缓冲池 ~~~java public class TestString { public static void main(String[] args){ String str1 = "string"; System.out.println(System.identityHashCode(st ...
分类:
编程语言 时间:
2020-01-27 23:55:41
阅读次数:
143