C++中的异常处理 C/C++

C++中的异常处理

一、异常处理 1.1 异常的基本用法 C语言中因为没有异常处理(只能通过返回值来判断错误)机制一直被诟病,因此C++也引入了try...catch机制,使得C++也能像java/python一样来捕获...
阅读全文
I/O模型 编程语言

I/O模型

一、I/O模型分类 unix环境下有5中IO模型: 阻塞式I/O 非阻塞式I/O I/O多路复用 信号驱动I/O 异步I/O(POSIX中的aio_系列函数) 常用的是前三种方式,特别是多路I/O复用...
阅读全文
猴子拿苹果问题-匿名信号量 C/C++

猴子拿苹果问题-匿名信号量

一、猴子拿苹果问题 逛脉脉时,看到一网友遇到的面试题:有9个苹果,2只猴子。一个猴子每次拿2个苹果,一个猴子每次拿3个苹果。如果剩余的苹果数量不够猴子拿的数量,则停止拿苹果。请用多线程的方式模拟上面的...
阅读全文
进程间通信之共享内存 C/C++

进程间通信之共享内存

共享内存是所有IPC通信中效率最高的,它通过把文件映射到用户进程空间,然后直接通过地址访问来实现多进程通信。相对于其他IPC通信方式而言,少去了把数据从用户空间复制到内核空间,再从内核空间复制到用户空...
阅读全文
进程间通信之信号量 编程语言

进程间通信之信号量

一、信号量 信号量有两种,一种的有名信号,一种是无名信号。有名信号一般用于进程间同步,无名信号一般用于于线程间同步。创建或打开一个信号的函数: [crayon-6628f967ec25f4624586...
阅读全文