c#ÖжàÏß³Ìͬ²½½â¾ö·½°¸
c#ÖжàÏß³Ìͬ²½½â¾ö·½°¸
C#ÖжÔÓÚ¶àÏ̱߳à³ÌÓкܺõÄÖ§³Ö£¬³£ÓõÄÓÐÒÔϼ¸ÖÖ½â¾ö·½°¸£º
1. Lock(object) ¶ÔÐèҪͬ²½µÄ´úÂë¿é¼ÓËø£»
¡¡¡¡¡¡¡¡2. Monitor Class
¡¡¡¡¡¡¡¡3. ReaderWriterLock Class¡¡¡¡¡¡
4. Mutex Class
5. Semaphore
6. Event
Õâ´ÎÎÒÖ÷Ҫ˵һÏ Lock ºÍ Monitor¡£¶ÔÓÚLock Ïë±ØÓÐÒ»¶¨¶àÏ̱߳à³Ì¾ÑéµÄ³ÌÐòÔ±¶¼»áºÜÊìϤ£¬¿´Ãû×Ö¾ÍÖªµÀ´ó¸ÅÊÇʲôÒâ˼ÁË¡£Lock ¾ÍÊÇÒ»°ÑËø£¬¾Ù¸öºÜ²»ÑŵÃÀý×Ó¡£±ÈÈç˵ÎÒÃÇÈ¥ÉÏWC£¬µ±Äã½øÈ¥ºó¾ÍÒª°ÑÃÅËøס£¬ºóÀ´µÄÈËÖ»ÄܵÈÄã·½±ãÍêÁ˲ÅÄܽøÈ¥¡£
private string lockFlag = "LOCK";
public void GoWC(Person p)
{
lock (lockFlag)
{
Console.WriteLine("Begin");
Console.WriteLine("End");
}
}
LockʹÓÃÆðÀ´·Ç³£·½±ã£¬ÓÐÒ»µãÐèҪעÒâ¾ÍÊÇÄãͬ²½µÄ¶ÔÏó×îºÃÊÇprivate»òprivate static£¬ÒòΪÈç¹ûÕâ¸öͬ²½¶ÔÏóÊÇpublic»òinternal,¾ÍÓпÉÄܱ»ÆäËû³ÌÐòÖÐÆäËû²¿·ÖµÄ´úÂë»ñµÃ£¬ÕâÑùµÄ»°ÄãµÄlock¾ÍʧȥµÄ×÷Óã¬Ò²¾ÍÊÇ˵Õâ¸öWCµÄÔ¿³×Ö»ÄÜÓÐÒ»°Ñ£¬Ö»ÓнøÁËWCµÄÈ˲ÅÄÜ»ñµÃ£¬ÆäËûµÈ´ýµÄÈËÊÇûÓа취»ñµÃµÄ¡£
¡¡¡¡ÁíÒ»¸ö³£ÓõĽâ¾ö·½°¸ÊÇʹÓÃMonitor class¡£ monitor class ºÍlockÆäʵ±¾ÉíûÓÐʲôÇø±ð£¬ÕâÄÑÃâ»áÈÃÈ˾õµÃ·Ñ½â£¬Æäʵ²»È»¡£¶ÔÓÚʹÓÃlock¹Ø¼ü×ÖÀ´Ëµ¾³£»á·¢ÉúÒ»ÖÖÈÃÈ˷dz£ÓôÃƵÄÊÂÇé“Deadlock”,µ±personAÓµÓÐr
Ïà¹ØÎĵµ£º
C#»ñÈ¡×Ö·û´®µÄ³¤¶È
×÷Õߣºylclass À´Ô´£º²©¿ÍÔ° ·¢²¼Ê±¼ä£º2009-10-30 16:25 ÔĶÁ£º193 ´Î ÔÎÄÁ´½Ó [ÊÕ²Ø]
1¡¢ ʹÓÃg.MeasureString£¨£©»ñµÃ
ʹÓÃMeasureString²âÁ¿³öÀ´µÄ×Ö·û¿í¶È£¬×ÜÊDZÈʵ¼Ê¿í¶È´óһЩ£¬¶øÇÒËæ×Å×Ö·û ......
¸ù¾Ý¿í¶ÈÀ´¾ö¶¨ÏÔʾµÄ×Ö·û´®³¤¶È (C#,VS2005)
Èç¹û lable³¤¶È¹Ì¶¨µ«×Ö·û´®³¤¶È¿É±ä£¬Èç¹û³¬¹ýÁËlableÏÔʾµÄ³¤¶Èʱ£¬Ï£ÍûÓà ...´úÌæʣϵÄ×Ö·û£¬ÕâʱÐèÒªÒ»¸öº¯Êý
Graphics.MeasureString
¾ßÌå´úÂëÈçÏÂ
public string Abbreviation(string str)
{
&nbs ......
µÚÒ»Õ ³ÌÐòÉè¼Æ
¡¡¡¡“ÒªÏë³ÉΪÕæÕýµÄ³ÌÐòÔ±£¬ÎÒÃÇÐèÒª½øÐÐÒ»³¡Ï´Àñ¡£”
¡¡¡¡“³ÌÐò = Êý¾Ý½á¹¹ + Ëã·¨¡£”ÕâÑùµÄ¹«Ê½ºÜ¾«±Ù£¬ËüÔ½¹ýÁ˱í²ãÖ±½ÓÃèÊöÁ˳ÌÐòµÄ±¾ÖÊ¡£²»½öÈç´Ë£¬ÕâÑù¼¸¸ö¼òµ¥µÄµ¥´ÊÒ²ÈÃÎÒÃÇÃ÷°×“ÎÒÃÇÓ¦¸ÃѧϰʲôÄÚÈÝ£¿”¡£ÈËÃÇ×öÈκÎʶ¼ÓÐÒ»¶¨µÄ³ÌÐò£¬Ö»ÊÇûÓÐÒâʶµ½¡£Ó ......
IndexOf()
²éÕÒ×Ö´®ÖÐÖ¸¶¨×Ö·û»ò×Ö´®Ê״γöÏÖµÄλÖÃ,·µÊ×Ë÷ÒýÖµ£¬È磺
str1.IndexOf("×Ö")£» //²éÕÒ“×Ö”ÔÚstr1ÖеÄË÷ÒýÖµ£¨Î»Öã©
str1.IndexOf("×Ö´®")£»//²éÕÒ“×Ö´®”µÄµÚÒ»¸ö×Ö·ûÔÚstr1ÖеÄË÷ÒýÖµ£¨Î»Öã©
str1.IndexOf("×Ö",start,end)£»//´Óstr1µÚstart+1¸ö×Ö·ûÆ𣬲éÕÒend¸ö×Ö·û£¬²éÕ ......
ÒÔÏÂÊÇÒ»¸ö²éѯIPµØÖ·¹éÊôµØµÄCLR´æ´¢¹ý³Ì£¬Èý²½£º
1¡¢ÓÃC#À´×öDLL£¬´úÂëÈçÏ£º
//====================================================================
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlTypes;
using System.Data.SqlClient;
using Microsoft.Sq ......