﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-eXile 的专栏-随笔分类-网络开发</title><link>http://www.cppblog.com/eXile/category/7026.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 28 May 2008 20:48:16 GMT</lastBuildDate><pubDate>Wed, 28 May 2008 20:48:16 GMT</pubDate><ttl>60</ttl><item><title>利用boost::asio实现一个简单的服务器框架</title><link>http://www.cppblog.com/eXile/archive/2008/05/28/51430.html</link><dc:creator>eXile</dc:creator><author>eXile</author><pubDate>Wed, 28 May 2008 13:00:00 GMT</pubDate><guid>http://www.cppblog.com/eXile/archive/2008/05/28/51430.html</guid><wfw:comment>http://www.cppblog.com/eXile/comments/51430.html</wfw:comment><comments>http://www.cppblog.com/eXile/archive/2008/05/28/51430.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/eXile/comments/commentRss/51430.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/eXile/services/trackbacks/51430.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 利用boost::asio实现一个简单的服务器框架&nbsp;&nbsp;<a href='http://www.cppblog.com/eXile/archive/2008/05/28/51430.html'>阅读全文</a><img src ="http://www.cppblog.com/eXile/aggbug/51430.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/eXile/" target="_blank">eXile</a> 2008-05-28 21:00 <a href="http://www.cppblog.com/eXile/archive/2008/05/28/51430.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Reactor模式中网络事件分派探讨</title><link>http://www.cppblog.com/eXile/archive/2008/05/22/50767.html</link><dc:creator>eXile</dc:creator><author>eXile</author><pubDate>Thu, 22 May 2008 07:27:00 GMT</pubDate><guid>http://www.cppblog.com/eXile/archive/2008/05/22/50767.html</guid><wfw:comment>http://www.cppblog.com/eXile/comments/50767.html</wfw:comment><comments>http://www.cppblog.com/eXile/archive/2008/05/22/50767.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cppblog.com/eXile/comments/commentRss/50767.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/eXile/services/trackbacks/50767.html</trackback:ping><description><![CDATA[<br>原文地址:　<a href="http://www.cppblog.com/eXile">http://www.cppblog.com/eXile</a><br><br>&nbsp;　　对于使用线程池的Reactor模式，针对每一个SOCKET句柄的事件处理器handler可能被分派到不同的线程当中，这就要求handler的每一个操作都是线程安全的。<br>　　可以使用一种办法使一个handler的操作只能分派到一个线程中：为每一个handler设定一个线程所有者ＩＤ，一开始ＩＤ为空，则每个线程都可以分派，第一次分派之后，则设定为该线程ＩＤ，以后只分派到该线程中。这样，可以保证handler操作的单线程性，简化以后handler的具体实现。这个ＩＤ也可以灵活设置，以适应具体事务的要求。<br>　　但这样并不能保证handler彻底无锁，因为还会有两个线程会出现竟争，除了这个事件处理线程以外，还有事件分派线程（即事件侦听线程）。对于这个问题的解决办法如下：为每个handler设定一个原子计数，事件分派线程在分派事件前，首先设定该原子计数，若设置失败，表明此时正有其它线程在处理该handler，则并不分派该事件，而是将它置于一个pending队列中，等待以后分派。<br>&nbsp;　　还有一种简单的方法，就是将该handler直接挂起，处理完后才允许进行事件分派。 
<img src ="http://www.cppblog.com/eXile/aggbug/50767.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/eXile/" target="_blank">eXile</a> 2008-05-22 15:27 <a href="http://www.cppblog.com/eXile/archive/2008/05/22/50767.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>boost::asio示例HTTP Server类图</title><link>http://www.cppblog.com/eXile/archive/2008/05/07/49072.html</link><dc:creator>eXile</dc:creator><author>eXile</author><pubDate>Tue, 06 May 2008 16:50:00 GMT</pubDate><guid>http://www.cppblog.com/eXile/archive/2008/05/07/49072.html</guid><wfw:comment>http://www.cppblog.com/eXile/comments/49072.html</wfw:comment><comments>http://www.cppblog.com/eXile/archive/2008/05/07/49072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/eXile/comments/commentRss/49072.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/eXile/services/trackbacks/49072.html</trackback:ping><description><![CDATA[<p><a href="http://www.cppblog.com/images/cppblog_com/exile/asio_http_1.jpg"><img height=652 alt="" src="http://www.cppblog.com/images/cppblog_com/exile/asio_http_1.jpg" width=878 align=left border=0></a><a href="http://www.cppblog.com/images/cppblog_com/exile/asio_http_1.jpg"></a></p>
<img src ="http://www.cppblog.com/eXile/aggbug/49072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/eXile/" target="_blank">eXile</a> 2008-05-07 00:50 <a href="http://www.cppblog.com/eXile/archive/2008/05/07/49072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>高性能服务器的多线程策略</title><link>http://www.cppblog.com/eXile/archive/2008/03/06/multithread.html</link><dc:creator>eXile</dc:creator><author>eXile</author><pubDate>Wed, 05 Mar 2008 16:09:00 GMT</pubDate><guid>http://www.cppblog.com/eXile/archive/2008/03/06/multithread.html</guid><wfw:comment>http://www.cppblog.com/eXile/comments/43780.html</wfw:comment><comments>http://www.cppblog.com/eXile/archive/2008/03/06/multithread.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cppblog.com/eXile/comments/commentRss/43780.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/eXile/services/trackbacks/43780.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: （一）线程数量与线程池模型 （二）多线程的内存池优化&nbsp;&nbsp;<a href='http://www.cppblog.com/eXile/archive/2008/03/06/multithread.html'>阅读全文</a><img src ="http://www.cppblog.com/eXile/aggbug/43780.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/eXile/" target="_blank">eXile</a> 2008-03-06 00:09 <a href="http://www.cppblog.com/eXile/archive/2008/03/06/multithread.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>