linuxÏß³Ì
ËùÓÐÏ̶߳¼ÓÐÒ»¸öÏ̺߳ţ¬Ò²¾ÍÊÇ
Thread ID
¡£ÆäÀàÐÍΪ
pthread_t
¡£Í¨¹ýµ÷ÓÃ
pthread_self()
º¯Êý¿ÉÒÔ»ñµÃ×ÔÉíµÄÏ̺߳š£
ÏÂÃæËµÒ»ÏÂÈçºÎ´´½¨Ò»¸öÏ̡߳£
ͨ¹ý´´½¨Ị̈߳¬Ï߳̽«»áÖ´ÐÐÒ»¸öÏ̺߳¯Êý£¬¸ÃÏ̸߳ñʽ±ØÐë°´ÕÕÏÂÃæÀ´ÉùÃ÷£º
void * Thread_Function(void *)
´´½¨Ï̵߳ĺ¯ÊýÈçÏ£º
int pthread_create(pthread_t *restrict thread,
const pthread_attr_t *restrict attr,
void *(*start_routine)(void*), void *restrict arg);
ÏÂÃæËµÃ÷һϸ÷¸ö²ÎÊýµÄº¬Ò壺
thread
£ºËù´´½¨µÄÏ̺߳š£
attr
£ºËù´´½¨µÄÏß³ÌÊôÐÔ£¬Õâ¸ö½«ÔÚºóÃæÏêϸ˵Ã÷¡£
start_routine
£º¼´½«ÔËÐеÄÏ̺߳¯Êý¡£
art
£º´«µÝ¸øÏ̺߳¯ÊýµÄ²ÎÊý¡£
ÏÂÃæÊÇÒ»¸ö¼òµ¥µÄ´´½¨Ïß³ÌÀý×Ó£º
#include <pthread.h>
#include <stdio.h>
/* Prints x’s to stderr. The parameter is unused. Does not return. */
void* print_xs (void* unused)
{
while (1)
fputc (‘x’, stderr);
return NULL;
}
/* The main program. */
int main ()
{
pthread_t thread_id;
/* Create a new thread. The new thread will run the print_xs
function. */
pthread_create (&thread_id, NULL, &print_xs, NULL);
/* Print o’s continuously to stderr. */
while (1)
fputc (‘o’, stderr);
return 0;
}
ÔÚ±àÒëµÄʱºòÐèҪעÒ⣬ÓÉÓÚÏ̴߳´½¨º¯ÊýÔÚ
libpthread.so
¿âÖУ¬ËùÒÔÔÚ±àÒëÃüÁîÖÐÐèÒª½«¸Ã¿âµ¼Èë¡£ÃüÁîÈçÏ£º
gcc –o createthread –lpthread createthread.c
Èç¹ûÏë´«µÝ²ÎÊý¸øÏ̺߳¯Êý£¬¿ÉÒÔͨ¹ýÆä²ÎÊý
arg
£¬ÆäÀàÐÍÊÇ
void *
¡£Èç¹ûÄãÐèÒª´«µÝ¶à¸ö²ÎÊýµÄ»°£¬¿ÉÒÔ¿¼Âǽ«ÕâЩ²ÎÊý×é³ÉÒ»¸ö½á¹¹ÌåÀ´´«µÝ¡£ÁíÍ⣬ÓÉÓÚÀàÐÍÊÇ
void *
£¬ËùÒÔÄãµÄ²ÎÊý²»¿ÉÒÔ±»ÌáǰÊͷŵô¡£
ÏÂÃæÒ»¸öÎÊÌâºÍÇ°Ãæ´´½¨½ø³ÌÀàËÆ£¬²»¹ý´øÀ´µÄÎÊÌâ»Ø±Ü½ø³ÌÒªÑÏÖØµÃ¶à¡£Èç¹ûÄãµÄÖ÷Ị̈߳¬Ò²¾ÍÊÇ
main
º¯ÊýÖ´ÐеÄÄǸöỊ̈߳¬ÔÚÄãÆäËûÏØ³ÇÍÆ³ö֮ǰ¾ÍÒѾÍ˳ö£¬ÄÇô´øÀ´µÄ
bug
Ôò²»¿É¹ÀÁ¿¡£Í¨¹ý
pthread_join
º¯Êý»áÈÃÖ÷Ïß³Ì×èÈû£¬Ö±µ½ËùÓÐÏß³
Ïà¹ØÎĵµ£º
Linux 2.6.19.x Äں˱àÒëÅäÖÃÑ¡Ïî¼ò½é
×÷Õߣº½ð²½¹ú
Code maturity level options
´úÂë³ÉÊì¶ÈÑ¡Ïî
Prompt for development and/or incomplete code/drivers ÏÔʾÉÐÔÚ¿ª·¢ÖлòÉÐδÍê³ÉµÄ´úÂëÓëÇý¶¯.³ý·ÇÄãÊDzâÊÔÈËÔ±»òÕß¿ª·¢Õß,·ñÔòÇëÎðÑ¡Ôñ
General setup
³£¹æÉèÖÃ
Local version - append to kernel release ÔÚÄÚº ......
WgetÊÇÒ»¸öÊ®·Ö³£ÓÃÃüÁîÐÐÏÂÔØ¹¤¾ß£¬¶àÊýLinux·¢Ðа汾¶¼Ä¬Èϰüº¬Õâ¸ö¹¤¾ß¡£Èç¹ûûÓа²×°¿ÉÔÚ http: //www.gnu.org/software/wget/wget.html ÏÂÔØ×îа汾£¬²¢Ê¹ÓÃÈçÏÂÃüÁî±àÒë°²×°£º
# tar zxvf wget-1.9.1.tar.gz
# cd wget-1.9.1
# ./configure
# make
# make install
ËüµÄÓ÷¨ºÜ¼òµ¥.
1£©Ö§³Ö¶ÏµãÏ ......
ÔÚLinux ÖУ¬¶¯Ì¬¿âµÄËÑË÷·¾¶³ýÁËĬÈϵÄËÑË÷·¾¶Í⣬»¹¿Éͨ¹ýÈýÖÖ·½·¨À´Ö¸¶¨£º·½·¨Ò»£ºÔÚÅäÖÃÎļþ/etc/ld.so.confÖÐÖ¸¶¨¶¯Ì¬¿âËÑË÷·¾¶£»·½·¨¶þ£ºÍ¨¹ý»·¾³±äÁ¿LD_LIBRARY_PATHÖ¸¶¨¶¯Ì¬¿âËÑË÷·¾¶£»·½·¨Èý£ºÔÚ±àÒëÄ¿±ê´úÂëʱָ¶¨¸Ã³ÌÐòµÄ¶¯Ì¬¿âËÑË÷·¾¶¡£
ÖÚËùÖÜÖª£¬Linux¶¯Ì¬¿âµÄĬÈÏËÑË÷·¾¶ÊÇ/libºÍ/usr/lib¡£¶¯Ì¬¿â±» ......
ronÊÇÒ»¸ölinuxÏµĶ¨Ê±Ö´Ðй¤¾ß£¬¿ÉÒÔÔÚÎÞÐèÈ˹¤¸ÉÔ¤µÄÇé¿öÏÂÔËÐÐ×÷Òµ¡£ÓÉÓÚCron ÊÇLinuxµÄÄÚÖ÷þÎñ£¬µ«Ëü²»×Ô¶¯ÆðÀ´£¬¿ÉÒÔÓÃÒÔÏµķ½·¨Æô¶¯¡¢¹Ø±ÕÕâ¸ö·þÎñ:
¡¡¡¡/sbin/service crond start //Æô¶¯·þÎñ
¡¡¡¡/sbin/service crond stop //¹Ø±Õ·þÎñ
¡¡¡¡/sbin/service crond restart //ÖØÆô·þÎñ
¡¡¡¡/sbin/service crond ......
Ãû³Æ ĬÈ϶¯×÷ ˵Ã÷
SIGHUP ÖÕÖ¹½ø³Ì ÖÕ¶ËÏß·¹Ò¶Ï
SIGINT ÖÕÖ¹½ø³Ì ÖжϽø³Ì
SIGQUIT ½¨Á¢COREÎļþ ÖÕÖ¹½ø³Ì£¬²¢ÇÒÉú³ÉcoreÎļþ
SIGILL ......