Linux ÏÂÏß³Ìͬ²½
½øÐжàÏ̱߳à³Ì£¬×îÍ·Ì۵ľÍÊÇÄÇЩ¹²ÏíµÄÊý¾Ý¡£ÒòΪÄãÎÞ·¨ÖªµÀÄĸöÏ̻߳áÔÚÄĸöʱºò¶ÔËü½øÐвÙ×÷£¬ÄãÒ²ÎÞ·¨µÃÖªÄǸöÏ̻߳áÏÈÔËÐУ¬ÄĸöÏ̻߳áºóÔËÐС£ÏÂÃæ½éÉÜһЩ¼¼Êõ£¬Í¨¹ýËûÃÇ£¬Äã»áºÏÀí°²ÅÅÄãµÄÏß³ÌÖ®¼ä¶Ô×ÊÔ´µÄ¾ºÕù¡£
l »¥³âÌåMutex
l ÐźŵÆSemophore
l Ìõ¼þ±äÁ¿Conditions
ÏÈ˵һÏ»¥³âÁ¿¡£
ʲôʱºò»áÓÃÉÏ»¥³âÁ¿ÁË£¿±ÈÈçÄãÏÖÔÚÓÐһȫ¾ÖÁ´±í£¬ÄãÓм¸¸ö¹¤×÷Ï̡߳£Ã¿Ò»¸öÏ̴߳ӸÃÁ´±íÖÐÈ¡³öÍ·½Úµã£¬È»ºó¶Ô¸ÃÍ·½Úµã½øÐд¦Àí¡£±ÈÈçÏÖÔÚÏß³Ì1ÕýÔÚÈ¡³öÍ·½Úµã£¬ËûµÄ²Ù×÷ÈçÏ£º
Item * p =queue_list;
Queue_list=queue_list->next;
Process_job(p);
Free(p);
µ±Ïß³Ì1´¦ÀíÍêµÚÒ»²½£¬Ò²¾ÍÊÇItem *p=queue_listºó£¬ÕâʱºòϵͳֹͣÏß³Ì1µÄÔËÐУ¬¸Ä¶øÔËÐÐÏß³Ì2¡£Ïß³Ì2ÕÕÑùÈ¡³öÍ·½Úµã£¬È»ºó½øÐд¦Àí£¬×îºóÊÍ·ÅÁ˸ýڵ㡣¹ýÁ˶Îʱ¼ä£¬Ïß³Ì1ÖØÐµõ½ÔËÐС£¶øÕâ¸öʱºò£¬ÆäʵpËùÖ¸ÏòµÄ½ÚµãÒѾ±»Ïß³Ì2Êͷŵô£¬¶øÏß³Ì1¶Ô´ËºÁÎÞÖªÏþ¡£Ëû»á½Ó×ÅÔËÐÐprocess_job(p)¡£¶øÕ⽫µ¼ÖÂÎÞ·¨Ô¤Áϵĺó¹û£¡
¶ÔÓÚÕâÖÖÇé¿ö£¬ÏµÍ³¸øÎÒÃÇÌṩÁË»¥³âÁ¿¡£ÄãÔÚÈ¡³öÍ·½Úµãǰ±ØÐëÒªµÈ´ý»¥³âÁ¿£¬Èç¹û´ËʱÓÐÆäËûÏß³ÌÒѾ»ñµÃ¸Ã»¥³âÁ¿£¬ÄÇôÏ߳̽«»á×èÈûÔÚÕâ¸öµØ·½¡£Ö»Óеȵ½ÆäËûÏß³ÌÊͷŵô¸Ã»¥³âÁ¿ºó£¬ÄãµÄÏ̲߳ÅÓпÉÄܵõ½¸Ã»¥³âÁ¿¡£ÎªÊ²Ã´ÊÇ¿ÉÄÜÁË£¿ÒòΪ¿ÉÄÜ´ËʱÓв»Ö¹ÄãÒ»¸öÏß³ÌÔڵȺò¸Ã»¥³âÁ¿£¬¶øÏµÍ³ÎÞ·¨±£Ö¤ÄãµÄÏ߳̽«»áÓÅÏÈÔËÐС£
»¥³âÁ¿µÄÀàÐÍΪpthread_mutex_t¡£Äã¿ÉÒÔÉùÃ÷¶à¸ö»¥³âÁ¿¡£ÔÚÉùÃ÷¸Ã±äÁ¿ºó£¬ÄãÐèÒªµ÷ÓÃpthread_mutex_init()À´´´½¨¸Ã±äÁ¿¡£pthread_mutex_initµÄ¸ñʽÈçÏ£º
int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutex-
attr_t *mutexattr);
µÚÒ»¸ö²ÎÊý£¬mutext£¬Ò²¾ÍÊÇÄã֮ǰÉùÃ÷µÄÄǸö»¥³âÁ¿£¬µÚ¶þ¸ö²ÎÊýΪ¸Ã»¥³âÁ¿µÄÊôÐÔ¡£Õâ¸ö½«ÔÚºóÃæÏêϸÌÖÂÛ¡£
ÔÚ´´½¨¸Ã»¥³âÁ¿Ö®ºó£¬Äã±ã¿ÉÒÔʹÓÃËüÁË¡£ÒªµÃµ½»¥³âÁ¿£¬ÄãÐèÒªµ÷ÓÃÏÂÃæµÄº¯Êý£º
int pthread_mutex_lock(pthread_mutex_t *mutex);
¸Ãº¯ÊýÓÃÀ´¸ø»¥³âÁ¿ÉÏËø£¬Ò²¾ÍÊÇÎÒÃÇÇ°ÃæËù˵µÄµÈ´ý²Ù×÷¡£»¥³âÁ¿Ò»µ©±»ÉÏËøºó£¬ÆäËûÏß³ÌÈç¹ûÏë¸ø¸Ã»¥³âÁ¿ÉÏËø£¬ÄÇô¾Í»á×èÈûÔÚÕâ¸ö²Ù×÷ÉÏ¡£Èç¹ûÔÚ´Ë֮ǰ¸Ã»¥³âÁ¿ÒѾ±»ÆäËûÏß³ÌÉÏËø£¬ÄÇô¸Ã²Ù×÷½«»áÒ»Ö±×èÈûÔÚÕâ¸öµØ·½£
Ïà¹ØÎĵµ£º
¼òµ¥µÄ˵£¬ÐźžÍÊÇÔÚÈí¼þ²ã´ÎÉ϶ÔÖжϻúÖÆµÄÒ»ÖÖÄ£Ä⣬ÊÇÒ»ÖÖÒ첽ͨÐÅ·½Ê½¡£Ëü¿ÉÒÔʵÏÖÄں˽ø³ÌºÍÓû§½ø³ÌÖ®¼äµÄ½»»¥¡£ÊµÏÖ·½Ê½ÊÇ£¬ÔÚÈκÎʱºò·¢¸ø
ijһ½ø³Ì£¬Èç¹û¸Ã½ø³ÌûÓд¦ÓÚÖ´ÐÐ̬£¬Ôò¸ÃÐźÅÓÉÄں˱£´æ£¬Ö±µ½¸Ã½ø³Ì»Ö¸´Ö´ÐÐÔÙ´«µÝ¸øËüΪֹ¡£Èç¹ûÒ»¸öÐźŽø³ÌÉèÖÃΪ×èÈû£¬Ôò¸ÃÐźŵĴ«µÝ±»ÑÓ³Ù£¬Ö±µ½
Æä×èÈû±»È¡Ïûʱ ......
ÆäÖÐÓÐһЩº¯ÊýµÄ×÷ÓÃÍêÈ«Ïàͬ£¬Ö»ÊDzÎÊý²»Í¬¡££¨¿ÉÄܺܶàÊìϤC++ÅóÓÑÂíÉϾÍÄÜÁªÏëÆðº¯ÊýÖØÔØ£¬µ«ÊDZðÍüÁËLinuxºËÐÄÊÇÓÃCÓïÑÔдµÄ£¬ËùÒÔÖ»
ÄÜÈ¡³É²»Í¬µÄº¯ÊýÃû£©¡£»¹ÓÐһЩº¯ÊýÒѾ¹ýʱ£¬±»ÐµĸüºÃµÄº¯ÊýËù´úÌæÁË£¨gccÔÚÁ´½ÓÕâЩº¯Êýʱ»á·¢³ö¾¯¸æ£©£¬µ«ÒòΪ¼æÈݵÄÔÒò»¹±£Áô×Å£¬ÕâЩº¯ÊýÔÚǰ
Ãæ±êÉÏ“*”ºÅÒÔÊ ......
Èç¹û·þÎñÆ÷ÊÇ×Ô¼ºµÄ£¬²¢ÇÒ»úÆ÷¾ÍÔÚÉí±ß£¬ÄÇʲô¶¼²»ÓÃ˵ÁË£¬È±ÉÙgcc¶¥¶à¾ÍÊÇÖØÐ·ÅÈë°²×°ÅÌ£¬°Ñ¿ª·¢¹¤¾ß°ü°²×°ÉÏ¡£µ«ÊÇÈç¹ûÊÇ×âµÄ·þÎñÆ÷£¬ÍйܷþÎñ·½ÄǰïÈËÓָ㲻¶®Äã˵µÄɶ×Ógcc£¬Òª°²×°gccʵÔÚÊÇÌ«Âé·³ÁË¡£ÄãµÃÈ¥ÕÒgccÏà¹ØµÄ°ü£¬°æ±¾ºÅ»¹µÃ±ØÐë¶ÔÓ¦ÉÏ£¬·ñÔò²»¼æÈÝ¡£×î½ü¸øÒ»¸öÅóÓÑ×°gcc£¬ ......
ÕªÒª£º ±¾ÎÄÊÇfind ÃüÁîµÄÏêϸ˵Ã÷£¬¿É¹óµÄÊÇÕë¶Ô²ÎÊý¾ÙÁ˺ܶàµÄʵÀý£¬´óÁ¿µÄÀýÖ¤£¬ÈóõѧÕ߸üΪÈÝÒ×Àí½â£»±¾ÎÄÊÇzhyflyÐÖÌùÔÚÂÛ̳ÖУ»ÎÒ¶Ô±¾ÎĽøÐÐÁËÔÙ´ÎÕûÀí£¬Îª·½±ã´ó¼ÒÔĶÁ£»
Ŀ¼
°æÈ¨ÉùÃ÷
ǰÑÔ£º¹ØÓÚfindÃüÁî
Ò»¡¢find ÃüÁî¸ñʽ
1¡¢findÃüÁîµÄÒ»°ãÐÎʽΪ£»
2¡¢findÃüÁîµÄ²ÎÊý£»
3¡¢findÃüÁîÑ¡Ï
4¡¢Ê¹ÓÃexe ......
ÍøÉÏÕÒµ½ÁËÐí¶à¹ØÓÚÕâ·½ÃæµÄÎÄÕ£¬ÄÚÈÝ»ù±¾Ïàͬ¡£¾¹ýʵ¼ù£¬·¢ÏÖÄÚÈÝÀïÆÕ±é´æÔÚÎÊÌâ¡£ÒÔÏÂÊÇ×Ô¼ºÊµ¼ùÖ®ºó£¬ÐÞ¸ÄÁËÆäÖеĴíÎ󣬲¢¼Ç¼ÏÂÀ´µÄ±Ê¼Ç¡£
ÔÚ Linux »ò UNIX Ï嵀 Apache ·þÎñÆ÷ÖиøÍøÒ³ÉèÖÃÃÜÂë—ÕâÊÇÒ»Öֺܼòµ¥µÄ»ùÓÚÓû§Ãû/¿ÚÁîµÄÈÏÖ¤·½Ê½£ ......