LinuxÒÁµéÔ°ÂÛ̳'s Archiver

wyy0824 ·¢±íÓÚ 2006-11-15 17:35

¡¾ÐÂÊÖÇóÖú¡¿ÈçºÎÅжÏÐźÅÁ¿´´½¨³É¹¦

ÕâÊÇÎÒÒ»¶Î¹ØÓÚ¹²Ïí¿âµÄ´úÂë,ûÍê³É.!OrI+Qg1{
#kR&MMa*f
  ÌâÄ¿ÊÇ:½«´´½¨,ɾ³ýÐźÅÁ¿º¯ÊýÖÆ³É¹²Ïí¿â.±àдһ¸ö³ÌÐòµ÷Óù²Ïí¿â.¿´ÊÇ·ñ³É¹¦.0|k b6cg5wc
JZ I2[ U@lD K
ÕâÊÇÎҵĵ÷ÓóÌÐò:p:U1kjBYi;G _
  #include "stdio.h"
'g.{b V#IGTJQP sd   #include <sys/sem.h>
^A;v6]@{aT   
3AlS u O7v/Fb`5q   #include "dlfcn.h"
E(k-c"x1q(lD   #define SOFILE "./my.so" /*Ö¸¶¨¶¯Ì¬Á´½Ó¿âÃû³Æ*/x0eF|:Mg u
   L H"u j h~ v\
  main()"m VI'`!pX\^
  {
7t*Q3^e`{xtM9W!L           void *dp;
UcK{qx           char *error;
{t5z|h2P dVU:rT           int (*sem_creat) (key_t key);
!PCvg(xJ"ak @f           void (*sem_del) (int semid); L y QH)l mT#Sw
          key_t key;
$oos'L*buQ#Y_ v           int semid;
sus8T/b)@A `!R           puts ("the example using shared lib");/i/j%w,[ ea B3a
          MM ?s x!`l.]4s1t
          //´ò¿ª¶¯Ì¬Á´½Ó¿â
@fTH+NL           dp = dlopen (SOFILE,RTLD_LAZY);
/|4PA/r;@wj           if (dp==NULL)
{8TG lj+f0|"e           {
Bv/_u|l                   fputs (dlerror(),stderr);MF*q'WcA
                  exit(1);
W3d4to\AK           }
I Y(O/vd mu}1` g$IU          
LxB-u:gp7T           //È¡´´½¨ÐźÅÁ¿º¯Êý
L2ty&g^O6K           sem_creat = dlsym (dp,"sem_creat");
r9}bP*x&s,|B           error = dlerror();
plD e6d0i`-V:ccs           if (error)v*G0WB p,@
          {
\ W TI2s'W                   fputs (error,stderr);
*OaO*mQ_                   exit (1);
]z/yzS D"_-ev K           }
p/@s+e4?/`           xv-UfP%P/{V e k;k
          //ȡɾ³ýÐźÅÁ¿º¯Êý}%}r)_x#x0TZ
          sem_del = dlsym (dp,"sem_del");eO.jVr)\x(QD9J7w
          error = dlerror();
^ HeJwGB8I           if (error)(s,z2CV`3Y
          {Oj(i%y)r6zlQ
                  fputs (error,stderr); _{q.]4M aK*v]
                  exit (1);Q.}T2G5\;b*u?
          }
0L^0\!b.M   
,{$G}R8L i           //µ÷Óù²Ïíº¯Êý
PtN}Z5m M           ¡­¡­¡­¡­¡­¡­x Z!o!NW H
         
+{k/jVRW           //¹Ø±Õ¹²Ïí¿â } }V-_T:pa2b0b%\MO&Z
          dlclose (dp);
+? {$K9L"H           exit (0);+OG$k4M ~KA O
  }^Z M JpZ S
  
_-R&?V9[   ÈçºÎÅжÏÊÇ·ñ´´½¨ÁËÐźÅÁ¿ÄØ£¿µ÷Óù²Ïíº¯ÊýÕâ¿éÓ¦¸ÃÔõôд£¿£¿6Ys6hY1L
  ¸ßÊÖ°ïÎÒÏ£þ£þ£þ¼±:confused::confused::confused::confused::confused:

flag ·¢±íÓÚ 2006-11-16 09:38

°Ñ¶ÔÐźÅÁ¿µÄ²Ù×÷º¯Êý·Åµ½¹²Ïí¿âÀµ÷ÓÃÕâЩº¯ÊýµÄ»°ºÍʹÓú¯ÊýÖ¸ÕëÊÇÒ»ÑùµÄ°¡£¬¿´Äã´úÂëÒ²ÕýÈ·£¬ÊÇûÓÐÀí½âº¯ÊýÖ¸ÕëµÄʹÓÃÂð£¿

wyy0824 ·¢±íÓÚ 2006-11-16 10:07

¶÷,ÊǵÄ.ÎÒ¶ÔÖ¸ÕëÕâ¿é±È½Ï±¡Èõ,ËùÒÔ²»ÖªµÀ¸ÃÔõô×ö

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.