发布时间:2013-06-04 23:58:27
用信号量实现的线程安全队列。简单有用的示例程序,比起互斥量的实现在多线程时效率更好。cir_queue.h/* * \File * cir_queue.h * \Brief * circular queue */#ifndef __CIR_QUEUE_H__#define __CIR_QUEUE_H__#define QUE_SIZE 8typedef int DataType;typedef struct cir_queue_t{ DataType data[QUE_SIZE]; int f......【阅读全文】
发布时间:2013-06-02 00:07:32
学习何时以及如何使用 POSIX AIO APIM. Tim Jones (mtj@mtjones.com), 顾问工程师, Emulex简介: Linux? 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决方案,因为调用应用程序在等待 I/O 请求完成时不需要使用任何中央处理.........【阅读全文】
发布时间:2013-06-02 00:07:31
学习何时以及如何使用 POSIX AIO APIM. Tim Jones (mtj@mtjones.com), 顾问工程师, Emulex简介: Linux? 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决方案,因为调用应用程序在等待 I/O 请求完成时不需要使用任何中央处理.........【阅读全文】
发布时间:2013-06-02 00:02:12
前言: Bind(): Address already in use引出来的问题:前一篇文章《linux socket 编程示例》在用CTRL+C结束进程后,再启动时会出现:Bind(): Address already in use的错误提示,并导致程序直接退出; 用$netstat -an |grep 8080或$ps aux |grep 8080都还能看到刚才用Ctrl+C“强制结束”了的进程,端口还是使用中,只能用kill结束进程,才能收回端口,很是麻烦。在代码中添加:int optval;optval = 1;ret = setsockopt( sock, SOL......【阅读全文】
发布时间:2013-06-01 23:43:28
一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。.........【阅读全文】