线程间的通信同步方式与进程间通信方式

Posted zhaodun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程间的通信同步方式与进程间通信方式相关的知识,希望对你有一定的参考价值。

1.线程间的通信方式

1)使用全局变量(由于多个线程可能更改全局变量,因此全局变量最好声明为volatile)

2) 使用消息实现通信

 3)使用事件CEvent类实现线程间的通信

2.同步/异步(C端)

同步:在C端发出一个功能调用时,没有得到结果之前就不返回

异步: 一个请求通过事件触发后,得到服务器处理后才处理完毕

3. 阻塞/非阻塞(S端)

阻塞:阻塞调用是指调用结果返回之前,当前线程会被挂起(线程进入非可执行状态,在这个状态下,cpu不会给线程分配时间片,即线程暂停运行)。函数只有在得到结果之后才会返回。

非阻塞:非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回。

4.

1.) 同步,就是我客户端(c端调用者)调用一个功能,该功能没有结束前,我(c端调用者)死等结果。
2. )异步,就是我(c端调用者)调用一个功能,不需要知道该功能结果,该功能有结果后通知我(c端调用者)即回调通知。

3.) 阻塞,      就是调用我(s端被调用者,函数),我(s端被调用者,函数)没有接收完数据或者没有得到结果之前,我不会返回。
4. )非阻塞,  就是调用我(s端被调用者,函数),我(s端被调用者,函数)立即返回,通过select通知调用者

同步IO和异步IO的区别就在于:数据访问的时候进程是否阻塞!

阻塞IO和非阻塞IO的区别就在于:应用程序的调用是否立即返回!

以上是关于线程间的通信同步方式与进程间通信方式的主要内容,如果未能解决你的问题,请参考以下文章

进程通信,线程通信,同步方式

进程间的几种通信方式的比较和线程间的几种

进程间通信方式及特点

进程间,线程间通信方式

线程间的通信方式以及线程与进程的区别

进程 线程通信方式(转载)