linux Ï̱߳¾µØ´æ´¢ÒÉÎÊ
×öÁ˸ödll£¬ÔÚdllÖÐÓиöÈ«¾Ö±äÁ¿Óжà¸öº¯Êý·ÃÎÊÕâ¸ö±äÁ¿£¬dllÊDZ»¶àÏ̵߳÷Óõġ£
dllÖеÄÕâ¸öÈ«¾Ö±äÁ¿ÊǸöÖ¸Õ룬±£´æÉêÇëµÄÄÚ´æµØÖ·£¬
ÉêÇëÄÚ´æµÄº¯ÊýÖÐÊÇÕâÑù×öµÄ
PQUERY pQuery ;
pthread_key_create (&thread_mem_key, ClearMemory);
pQuery = new TQUERY;
pthread_setspecific (thread_mem_key, (void *)pQuery);
»ñÈ¡µØÖ·µÄº¯Êý£º
void * addr = NULL;
addr = (void *)pthread_getspecific(thread_mem_key);
return addr;
ɾ³ýµØÖ·µÄº¯Êý£º
PQUERY addr = NULL;
addr = (PQUERY)pthread_getspecific(thread_mem_key);
if (addr != NULL)
{
delete addr;
}
pthread_key_delete(thread_mem_key);
µ«ÊÇÏÖÔÚÓöµ½ÁËÎÊÌ⣬ÔÚµ÷ÓûñÈ¡µØÖ·µÄº¯Êýʱ£¬µÃµ½µÄµØÖ·¾¹È»ÊÇNULL,
ÏÖÔڷdz£À§»ó£¬´ó¼Ò°ï°ïæ·ÖÎöÏ£¬Ê²Ã´ÔÒò»áÕâÑùÄØ£¿ÎÒ¸ÄÔõô×öÄØ£¿
LinuxÀïÓÐdllÂð? Í·Ò»»ØÌý˵
linuxÏÂ.so == .dll¡£
...ÄãÓÃdll?µ¹°¡¡£
linuxµÄ¶¯Ì¬Á´½Ó¿âÊÇso.
http://www.blogjava.net/davidgw/archive/2009/01/21/252230.html
û¿´³öʲôÎÊÌâ
ÄãµÄthread_mem_keyÊǶ¨ÒåÔÚÏß³ÌÌåÖеÄÂð?
ÊǶ¨ÒåÔÚ¶¯Ì¬¿âÖУ¬Ó¦¸ÃÊÇÏß³ÌÌåÖУ¬ÎÒµÄdll¾ÍÊǰÑÀ©ÕÅÃûso¸ÄΪdllÁË
- -
ʲô½ÐÓ¦¸Ã
Èç¹û²»ÔÚÏß³ÌÌåÖÐ
Ëü²»³öÎÊÌâ²ÅÆæ¹ÖÄØ~~
{
Ïà¹ØÎÊ´ð£º
ÎÒĿǰÔÚ±¾µØµÄlinuxÉÏдÁËÒ»¸öswingµÄ½çÃæ£¬Ïëͨ¹ýÕâ¸ö½çÃæÀ´¿ØÖÆÆäËüµçÄÔµÄlinuxÖØÆô¡£
ÎÒÖªµÀÓÃRuntime.getRuntime().exec("shutdown -r");¿ÉÒÔ¿ØÖƱ¾»úLinuxÖØÆô£¬µ«ÊÇÔõô¿ØÖÆÔ¶³ÌµÄlinuxÖØÆôÄØ£¿ ......
linux Ͻø³Ì´´½¨¡£
ʹÓÃvfork() º¯Êý´´½¨ÁË×Ó½ø³Ìºó£¬×Ó½ø³ÌÏÈÐÐÖ´ÐУ¬ÔÚ×Ó½ø³Ìµ÷ÓÃexit»òexec֮ǰ¸¸½ø³Ì´¦ÓÚʲô״̬£¿£¿
²»ÖªµÀ£»Ê×ÏÈδ±ØÊÇ×Ó½ø³ÌÏÈÖ´ÐУ»µÚ2¸¸½ø³ÌÒ²´¦ÓÚÖ´ÐÐ״̬£»ÖÁÓÚ¸¸½ø³Ìµ½µ××öʲô£»¿´´ ......
Ó¦ÓÃϵͳÊǰ²×°ÔÚ /opt Ŀ¼Ï£¬/opt Ŀ¼ÊÇÊôÓÚ¸ùĿ¼ / ϵġ£ÁíÍâÒ»¸öÎļþϵͳµÄ¹ÒÔØµãÊÇÔÚ/aaaĿ¼Ï£¬¿É·ñ½«/optĿ¼ÏµÄËùÓÐÎļþcopyµ½/aaaĿ¼Ï£¬umount ÔÚ/aaaĿ¼ÏµĹÒÔØµã£¬½«/aaa¸ÄÃû/optĿ¼£¬ÔÙ½«ÔÀ ......
ÓÉÓÚÎҲŸոսӴ¥socket±à³Ì£¬×Ô¼ºÐ´ÁËÒ»¸ö¼òµ¥³ÌÐò£¬µ«¾ÍÊÇÔÚÔËÐеÄʱºò³öÏֶδíÎó£¬ÎÞ·¨½â¾ö£¬ÏÖÔÚÎÒ°ÑÔ´´úÂëÌù³öÀ´£¬Çë¸÷λ´óϺָÕýһϣ¡Ð»Ð»£¡
#include<stdio.h>
#include<stdlib.h>
#include& ......
ÔÚlinux»·¾³Ï£¬ÈçºÎÓÃCÓïÑÔÈ¡µÃϵͳµ±Ç°½ø³ÌµÄ×ÜÊý£¿
systemµ÷ÓÃÍⲿÃüÁîps -ef | wc -l µÄ¾ÍÃâ̸ÁË£¬Õâ¸öÎÒ»á
ÄÇ lzÏëÔÚÓû§¿Õ¼ä×ö»¹ÊÇÄÚºË̬×öÄØ£¿
Óû§¿Õ¼äÎÒµÄÏë·¨ÊÇͳ¼Æ/procĿ¼ÏÂÓм¸¸öÊý×ÖÎļþ¼Ð
µ±È» ......