AJAX¼¼ÊõËùÌᳫµÄÎÞˢлص÷£¬ÔÚÔÀ´µÄ¼¼ÊõÖÐÐèҪд´óÁ¿µÄJavaScript´úÂë»òʹÓÃһЩAJAX¿ò¼Ü£¬Ê¹µÃ¿ª·¢Ð§ÂʺͿÉά»¤ÐÔ´ó´ó½µµÍ¡£ÆäʵASP.NET2.0ÖУ¬ÒѾÌṩÁËÕâÑùµÄ½Ó¿Ú£¬Õâ¾ÍÊÇICallbackEventHandler¡£
ICallbackEventHandler´æÔÚÓÚSystem.Web.UIÖУ¬ÎÒÃÇÏÈ×öÒ»¸ö·Ç³£¼òµ¥µÄÀý×ÓÀ´ÊÔÓÃһϡ£
¡¡¡¡ µÚÒ»²½£¬ÔÚVS2005Öн¨Á¢Ò»¸öеÄWEB´°¼þ¡£
¡¡¡¡ µÚ¶þ²½£¬ÔÚASPXÖУ¬·ÅÉÏÒ»¶ÎHTML´úÂë(ÈçÏÂ)£º
¡¡¡¡<button onclick="CallServer()">CallServer</button>
¡¡¡¡ µÚÈý²½£¬È»ºóÔÚ<HEAD></HEAD>ÖзÅÈëÒ»¶ÎJavaScript½Å±¾£º
¡¡¡¡<script type="text/javascript">
function CallServer()
{
var str = "ÉϺ£XX¼ÆËã»úÐÅÏ¢ÓÐÏÞ¹«Ë¾";
<%= ClientScript.GetCallbackEventReference(this, "str", "ReceiveServerData",null)%>;
}
function ReceiveServerData(serverResponseResult)
{
alert(serverResponseResult);
}
</script>
GetCallbackEventReferenceµÄ²ÎÊý˵Ã÷£º
µÚÒ»¸ö£ºÊµÏÖÁËICallbackEventHandler½Ó¿ÚµÄҳà ......
ÉúÃüÖÜÆÚ²½Öè¸ÅÀÀ
µ±ÎÒÃǶÔASP.NET MVCÍøÕ¾·¢³öÒ»¸öÇëÇóµÄʱºò£¬»á·¢Éú5¸öÖ÷Òª²½Ö裺
²½Öè1£º´´½¨RouteTable
µ±ASP.NETÓ¦ÓóÌÐòµÚÒ»´ÎÆô¶¯µÄʱºò²Å»á·¢ÉúµÚÒ»²½¡£RouteTable°ÑURLÓ³Éäµ½Handler¡£
²½Öè2£ºUrlRoutingModuleÀ¹½ØÇëÇó
µÚ¶þ²½ÔÚÎÒÃÇ·¢ÆðÇëÇóµÄʱºò·¢Éú¡£UrlRoutingModuleÀ¹½ØÁËÿһ¸öÇëÇó²¢ÇÒ´´½¨ºÍÖ´ÐкÏÊʵÄHandler¡£
²½Öè3£ºÖ´ÐÐMvcHandler
MvcHandler´´½¨ÁË¿ØÖÆÆ÷£¬²¢ÇÒ°Ñ¿ØÖÆÆ÷´«ÈëControllerContext£¬È»ºóÖ´ÐпØÖÆÆ÷¡£
²½Öè4£ºÖ´ÐпØÖÆÆ÷
¿ØÖÆÆ÷¼ì²âÒªÖ´ÐеĿØÖÆÆ÷·½·¨£¬¹¹½¨²ÎÊýÁÐ±í²¢ÇÒÖ´Ðз½·¨¡£
²½Öè5£ºµ÷ÓÃRenderView·½·¨
´ó¶àÊýÇé¿öÏ£¬¿ØÖÆÆ÷·½·¨µ÷ÓÃRenderView()À´°ÑÄÚÈݳÊÏÖ»Øä¯ÀÀÆ÷¡£Controller.RenderView()·½·¨°ÑÕâ¸ö¹¤×÷ίÍиøÄ³¸öViewEngineÀ´×ö¡£
ÏÖÔÚÈÃÎÒÃÇÀ´ÏêϸÑо¿Ã¿Ò»¸ö²½Ö裺
²½Öè1£º´´½¨RouteTable
µ±ÎÒÃÇÇëÇóÆÕͨASP.NETÓ¦ÓóÌÐòÒ³ÃæµÄʱºò£¬¶ÔÓÚÿһ¸öÒ³ÃæÇëÇó¶¼»áÔÚ´ÅÅÌÉÏÓÐÕâÑùÒ»¸öÒ³Ãæ¡£ÀýÈ磬Èç¹ûÎÒÃÇÇëÇóÒ»¸ö½Ð×öSomePage.aspxµÄÒ³Ãæ£¬ÔÚWEB·þÎñÆ÷ÉϾͻáÓÐÒ»¸ö½Ð×öSomePage.aspxµÄÒ³Ãæ¡£Èç¹ûûÓеϰ£¬»áµÃµ½Ò»¸ö´íÎó¡£
´Ó¼¼Êõ½Ç¶È˵£¬ASP.NETÒ³Ãæ´ú±íÒ»¸öÀ࣬²¢ÇÒ²»ÊÇÆÕͨÀà¡£ASP.NETÒ³ÃæÊÇÒ»¸öHandler¡£»»¾ä» ......
1 Ä¿µÄ
2 ·¶Î§
3 ×¢Ê͹淶
3.1 ¸ÅÊö
3.2 ×Ô½¨´úÂëÎļþ×¢ÊÍ
3.3 Ä£¿é£¨ÀࣩעÊÍ
3.4 ÀàÊôÐÔ×¢ÊÍ
3.5 ·½·¨×¢ÊÍ
3.6 ´úÂë¼ä×¢ÊÍ
4 ÃüÃû×ÜÌ广Ôò
5 ÃüÃû¹æ·¶
5.1 ±äÁ¿£¨Variable£©ÃüÃû
5.2 ³£Á¿ÃüÃû
5.3 ÀࣨClass£©ÃüÃû
5.4 ½Ó¿Ú£¨Interface£©ÃüÃû
5.5 ·½·¨£¨Method£©ÃüÃû
5.6 Ãû³Æ¿Õ¼äNamespace£©ÃüÃû
6 ±àÂë¹æÔò
6.1 ´íÎó¼ì²é¹æÔò
6.2 ´óÀ¨ºÅ¹æÔò
6.3 Ëõ½ø¹æÔò
6.4 СÀ¨ºÅ¹æÔò
6.5 If Then Else¹æÔò
6.6 ±È½Ï¹æÔò
6.7 Case¹æÔò
6.8 ¶ÔÆë¹æÔò
6.9 ......
1 Ä¿µÄ
2 ·¶Î§
3 ×¢Ê͹淶
3.1 ¸ÅÊö
3.2 ×Ô½¨´úÂëÎļþ×¢ÊÍ
3.3 Ä£¿é£¨ÀࣩעÊÍ
3.4 ÀàÊôÐÔ×¢ÊÍ
3.5 ·½·¨×¢ÊÍ
3.6 ´úÂë¼ä×¢ÊÍ
4 ÃüÃû×ÜÌ广Ôò
5 ÃüÃû¹æ·¶
5.1 ±äÁ¿£¨Variable£©ÃüÃû
5.2 ³£Á¿ÃüÃû
5.3 ÀࣨClass£©ÃüÃû
5.4 ½Ó¿Ú£¨Interface£©ÃüÃû
5.5 ·½·¨£¨Method£©ÃüÃû
5.6 Ãû³Æ¿Õ¼äNamespace£©ÃüÃû
6 ±àÂë¹æÔò
6.1 ´íÎó¼ì²é¹æÔò
6.2 ´óÀ¨ºÅ¹æÔò
6.3 Ëõ½ø¹æÔò
6.4 СÀ¨ºÅ¹æÔò
6.5 If Then Else¹æÔò
6.6 ±È½Ï¹æÔò
6.7 Case¹æÔò
6.8 ¶ÔÆë¹æÔò
6.9 ......
ÔÚ.Netƽ̨ϽøÐÐCSÈí¼þ¿ª·¢Ê±,ÎÒÃǾ³£Óöµ½ÒÔºó»¹ÒªÓõ½Ä³Ð©±äÁ¿ÉÏ´ÎÐ޸ĺóµÄÖµ,ΪÁ˼òµ¥Æð¼û,ºÜ¶àÈ˶¼Ï°¹ßÓÃstaticÀ´¶¨ÒåÕâЩ±äÁ¿,ÎÒÒ²ÊÇ¡£ÕâÑù·Ç³£·½±ã£¬ÏÂÒ»´Îµ÷ÓÃij¸öº¯Êýʱ¸Ã±äÁ¿ÈÔÈ»±£´æµÄÊÇ´¦Àí¹ýµÄÖµ£¬Ö±½ÓÄÃÀ´ÓþͿÉÒÔÁË¡£
ÏÖÔÚתÈëÁËBSÈí¼þ¿ª·¢£¬ÎÒÃǺÜ×ÔÈ»µØ»áÑØÓÃÕâÖÖϰ¹ß¡£ÈçÔÚÒ³ÃæÖÐͳ¼ÆÄ³¸ö°´Å¥±»°´ÏµĴÎÊý£¬ÏÈÔÚÀàÖÐOnClickʼþµÄ´¦Àí¹ý³Ìǰ¶¨ÒåÒ»static±äÁ¿times,Ôòÿ´Îµ÷Óøð´Å¥µÄOnClickʼþʱ£¬ÁîtimesÔö1¼´¿É£¬·Ç³£·½±ã£º
[C#]:
...
static int times=0;
...
private void Button1_Click(object sender,EventArgs e)
{
times++;
Label1.Text=times.ToString();
}
ÔÚÎÒÃÇÇìÐÒÈç´Ë·½±ãÖ®Ó࣬¾ÍÎ´ÔøÒâʶµ½ÎÒÃÇÒѾÂñÏÂÁËÒ»¿ÃÄÑÒÔ²ì¾õµÄ¶¨Ê±Õ¨µ¯¡£ÎªÊ²Ã´ÄÄ£¿
Õ⻹Ҫ´ÓAsp.netµÄÔËÐлúÖÆÌ¸Æð¡£ÔÚCSģʽÈí¼þ¿ª·¢¹ý³ÌÖУ¬ÎÒÃÇͨ³£²»»á¹ØÐÄÓ¦ÓóÌÐòÊÇÔÚÄÄÀïÔËÐе쬱äÁ¿´æ·ÅÔÚÄÄÀ¿Í»§¶Ë³ÌÐò¾ÍÔËÐÐÔÚ¿Í»§¶Ë£¬·þÎñÆ÷¶Ë³ÌÐò¾ÍÔËÐÐÔÚ·þÎñÆ÷¶Ë£¬Ò»°ãÇé¿öÏ£¬¶þÕß³ýÁËÊý¾Ý¿âÖеÄÊý¾Ý ......
http://blog.chinaunix.net/u/9861/showart_1890675.html
LinuxÖеÄ"Á㿽±´"ÆÊÎö
Zero Copy I: User-Mode Perspective
Author By Dragan Stancevic
Translated By Love. Katherine
(½âÊÍLinuxÖеÄ"Á㿽±´"ÌØÐÔ£¬ÎªÊ²Ã´ÓÐÓÃÒÔ¼°ºÎ´¦ÐèÒª¸Ä½øÖ®´¦)
Èç½ñ¼¸ºõÿ¸öÈ˶¼Ìý˵¹ýLinuxÖÐËùνµÄ"Á㿽±´"ÌØÐÔ£¬È»¶øÎÒ¾³£Åöµ½Ã»Óгä·ÖÀí½âÕâ¸ö
ÎÊÌâµÄÈËÃÇ¡£Òò´Ë£¬ÎÒ¾ö¶¨Ð´Ò»Ð©ÎÄÕÂÂÔ΢ÉîÈëµÄ½²ÊöÕâ¸öÎÊÌ⣬ϣÍûÄܽ«Õâ¸öÓÐÓõÄÌØ
ÐÔ½âÊÍÇå³þ¡£ÔÚ±¾ÎÄÖУ¬½«´ÓÓû§¿Õ¼äÓ¦ÓóÌÐòµÄ½Ç¶ÈÀ´²ûÊöÕâ¸öÎÊÌ⣬Òò´ËÓÐÒâºöÂÔÁË
¸´ÔÓµÄÄÚºËʵÏÖ¡£
ʲôÊÇ”Á㿽±´”
ΪÁ˸üºÃµÄÀí½âÎÊÌâµÄ½â¾ö·¨£¬ÎÒÃÇÊ×ÏÈÐèÒªÀí½âÎÊÌâ±¾Éí¡£Ê×ÏÈÎÒÃÇÒÔÒ»¸öÍøÂç·þÎñÊØ
»¤½ø³ÌΪÀý£¬¿¼ÂÇËüÔÚ½«´æ´¢ÔÚÎļþÖеÄÐÅϢͨ¹ýÍøÂç´«Ë͸ø¿Í»§ÕâÑùµÄ¼òµ¥¹ý³ÌÖУ¬Ëù
Éæ¼°µÄ²Ù×÷¡£ÏÂÃæÊÇÆäÖеIJ¿·Ö¼òµ¥´ú°¢£º
read(file, tmp_buf, len);
write(socket, tmp_buf, len);
¿´ÆðÀ´²»Äܸü¼òµ¥ÁË¡£ÄãÒ²ÐíÈÏΪִÐÐÕâÁ½¸öϵͳµ÷Óò¢Î´²úÉú¶àÉÙ¿ªÏú¡£Êµ¼ÊÉÏ£¬Õâ¼ò
Ö±´íµÄÒ»ËúºýÍ¿¡£ÔÚÖ´ÐÐÕâÁ½¸öϵͳµ÷ÓõĹý³ÌÖУ¬Ä ......
ÔÚѧϰ Linux® µÄ¹ý³ÌÖУ¬ÄúÒ²Ðí½Ó´¥¹ý²¢·¢£¨concurrency£©¡¢ÁÙ½ç¶Î£¨critical
section£©ºÍËø¶¨£¬µ«ÊÇÈçºÎÔÚÄÚºËÖÐʹÓÃÕâЩ¸ÅÄîÄØ£¿±¾ÎÄÌÖÂÛÁË 2.6 °æÄÚºËÖпÉÓõÄ
Ëø¶¨»úÖÆ£¬°üÀ¨Ô×ÓÔËËã·û£¨atomic operator£©¡¢×ÔÐýËø£¨spinlock£©¡¢¶Á/Ð´Ëø£¨
reader/writer lock£©ºÍÄÚºËÐźÅÁ¿£¨kernel semaphore£©¡£ ±¾ÎÄ»¹Ì½ÌÖÁËÿÖÖ»úÖÆ×îÊÊ
ºÏÓ¦Óõ½ÄÄЩµØ·½£¬ÒÔ¹¹½¨°²È«¸ßЧµÄÄں˴úÂë¡£
±¾ÎÄÌÖÂÛÁË Linux ÄÚºËÖпÉÓõĴóÁ¿Í¬²½»òËø¶¨»úÖÆ¡£ÕâЩ»úÖÆÎª 2.6.23 °æÄں˵ÄÐí¶à
¿ÉÓ÷½·¨ÌṩÁËÓ¦ÓóÌÐò½Ó¿Ú£¨API£©¡£µ«ÊÇÔÚÉîÈëѧϰ API ֮ǰ£¬Ê×ÏÈÐèÒªÃ÷°×½«Òª½â
¾öµÄÎÊÌâ¡£
developerWorks ÉÏ Tim µÄ¸ü¶à ÆÊÎö... ϵÁÐ
Linux ÎļþϵͳÆÊÎö
Linux ÍøÂç¶ÑÕ»ÆÊÎö
Linux ÄÚºËÆÊÎö
Linux slab ·ÖÅäÆ÷ÆÊÎö
Tim µÄËùÓÐ Anatomy of... ÎÄÕÂ
²¢·¢ºÍËø¶¨
µ±´æÔÚ²¢·¢ÌØÐÔʱ£¬±ØÐëʹÓÃͬ²½·½·¨¡£µ±ÔÚͬһʱ¼ä¶Î³öÏÖÁ½¸ö»ò¸ü¶à½ø³Ì²¢ÇÒÕâЩ½ø
³Ì±Ë´Ë½»»¥£¨ÀýÈ磬¹²ÏíÏàͬµÄ×ÊÔ´£©Ê±£¬¾Í´æÔÚ²¢·¢ ÏÖÏó¡£
ÔÚµ¥´¦ÀíÆ÷£¨uniprocessor£¬UP£©Ö÷»úÉÏ¿ÉÄÜ·¢Éú²¢·¢£¬ÔÚÕâÖÖÖ÷»úÖжà¸öÏ̹߳²Ïíͬһ
¸ö CPU ²¢ÇÒÇÀÕ¼£¨preemption£©´´½¨¾ºÌ¬Ìõ¼þ¡£ÇÀÕ¼ ͨ¹ýÁÙʱÖжÏÒ»¸öÏß³ÌÒÔ ......