apache
文章平均质量分 58
angellove156
女人的灵魂更表现在她的事业上!!!
展开
-
阻塞式Socket VS 非阻塞式Socket
主要有三种类型的socket,永久阻塞模式、阻塞加超时模式和非阻塞式。Socket模式可以通过apr_socket_opt_set()和apr_socket_timeout_set()这两个API控制。在Windows和Unix系统上默认的socket是永久阻塞模式APR_SO_NONBLOCK timeout value to apr_socket_timeout_s转载 2012-01-31 09:45:33 · 3805 阅读 · 0 评论 -
APR-错误状态(Error Status)
大多数APR函数返回一个apr_status_t类型的值,apr_status_t包含一个APR_SUCCESS,APR_SUCCESS表示这个函数执行成功我推荐你遵循这样的规则:只需要比较返回值是否为APR_SUCCESS,来获取函数是否运行成功 如果你需要知道错误的具体细节的时候,需要使用其他的错误代码表示 你最好了解一个API他就是apr_strerror转载 2012-01-13 17:29:02 · 4794 阅读 · 0 评论 -
APR-内存池
使用内存池第一点削除了内存泄漏的问题,第二点减低在非配内存时带来的损耗从某种意义上讲,内存池强制你遵循一种面相会话(session-oriented)的方式进行编程,一个内存池是一个种会话上下文环境(session context),这样它使得一组对象拥有同一种生存周期。你可以控制在同意会话的一组对象。你可以在一个会话开始的时候创建一个内存池,然后使用这个内存创建你的对象。你不必关心他们的生存转载 2012-01-13 16:28:05 · 4563 阅读 · 2 评论 -
APR-客户端编程
相比较服务器编程,客户端编程看起来更容易一些。注意一个新API,apr_socket_connect()。一、APR_DECLARE(apr_status_t) apr_socket_connect(apr_socket_t *sock, apr_sockaddr_t *sa);apr_socket_connect()的参数列表很像apr_socket_bind(),和apr_so转载 2012-01-13 15:00:33 · 2505 阅读 · 0 评论 -
APR-服务器端编程
一个典型的服务器进程打开一个监听端口,并且监听这个端口等待任意客户端进程的链接,然后接受这个客户端的链接,然后使用一种网络协议进行通信。虽然网络协议依赖于你的应用程序,但是以一个基本的服务器结构的代码大体上相同。一、APR_DECLARE(apr_status_t) apr_sockaddr_info_get(apr_sockaddr_t **sa, const char *hostname,转载 2012-01-13 14:56:48 · 4238 阅读 · 1 评论 -
线程同步互斥锁和读写锁的区别
读写锁特点:1)多个读者可以同时进行读2)写者必须互斥(只允许一个写者写,也不能读者写者同时进行)3)写者优先于读者(一旦有写者,则后续读者必须等待,唤醒时优先考虑写者) 互斥锁特点: 一次只能一个线程拥有互斥锁,其他线程只有等待原创 2012-01-13 13:34:21 · 9459 阅读 · 0 评论