在 Linux 中信号量(Semaphore)可以认为是一个不可以小于零的计数器,用来在不同的进程或者线程中同步行为。...
Linux 中信号有点类似与硬件中的中断,提供了一种处理异步事件的方法。应用程序并不需要特意的去配置就可以接收信号并作出默认的行为,当然应用程序也可以忽略或者注册回调函数来处理特定信号。...
FreeRTOS Kernel 允许多个 Task 并行,这里的 Task 有点类似于 Linux 的线程,然后 FreeRTOS Kernel 会对这些 Task 进行调度。目前 FreeRTOS Kernel 提供了三种调度算法,他们各有优劣可以根据实际情况选择对应的调度算法。...
现在有一个场景,假设机器 A 启动了一个 TCP Server,机器 B 启动了一个 TCP Client,并且 TCP Client 与 TCP Server 创建好了连接。此时将 A 的网线拔掉会出现什么情况呢?为了先得出直观的结构,可以先做一个简单的实验测试一下...
I/O 多路复用可以复用线程的处理能力,让单个线程也可以处理大量并发请求。目前 Linux 提供了三种 I/O 多路复用方式,分别为 SELECT,POLL,EPOLL。...
在 C++ 中想要传入函数的参数不被复制,可以通过引用或者指针的方式传入。如果说想要返回的产生也不被复制呢?当然可以直接将返回的对象作为入参以引用或者指针的形式传入,实际上直接返回也可以不复制,在C++返回参数不被复制被称为 Copy Elision。...
当我们谈及到 IO 多路复用的时候通常会提及到的一个概念是非杜塞IO,网上的教程中在使用IO多路复用的时候通常会先将对于的socket设置为非杜塞的,但是这样子做的原因却很少被提及。...
1/2
下一页