Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxϵÄÖ÷¶¯¶ÔÏóÀàµÄʵÏÖ

#pragma once
#include <pthread.h>
class ThreadWrapper
{
public:
    virtual ~ThreadWrapper();
    static void EnterFunc(void *p);
    int Open();
    int Close();
    bool TestCancel();
    void Wait();
    virtual void Svc();
protected:
    ThreadWrapper();
private:
    bool m_stillOpen;
    int m_threadNum;
    pthread_t m_handle;
};
*************************************************
#include "ThreadWrapper.h"
ThreadWrapper::ThreadWrapper()
: m_stillOpen(false)
{}
ThreadWrapper::~ThreadWrapper()
{
    if(m_stillOpen)
    {
        Close();
        Wait();
    }
}
/*
Functional: The enter function of the thread.
*/
void ThreadWrapper::EnterFunc (void *p)
{
    ThreadWrapper* bp = static_cast <ThreadWrapper*> (p);
     bp->Svc();
}
/*
Functional: Create the thread.
*/
int ThreadWrapper::Open ()
{
    m_threadNum = threadNum;
    int ret = pthread_create(&m_handle, NULL, EnterFunc, this);
    if (ret != 0)
   {
       return -1;
    }
    m_stillOpen = true;
    return 0;
}
int ThreadWrapper::Close()
{
    pthread_cancel(m_handle);
    m_stillOpen = false;
    return 1;
}
void ThreadWrapper::TestCancel()
{
     pthread_testcancel();
}
void ThreadWrapper::Wait()
{
    pthread_join(m_handle, NULL);
    m_stillOpen = false;
}
void ThreadWrapper::Svc()
{}
´ËÖ÷¶¯¶ÔÏóµÄÓ÷¨ÈçÏÂ:
1£ºÏȶ¨ÒåÖ÷¶¯¶ÔÏóÀ࣬ÅÉÉú×ÔThreadWrapper¼´¿É£¬È»ºóʵÏÖSvc()Ðé·½·¨
cla


Ïà¹ØÎĵµ£º

[ת]Linux Ïß³ÌʵÏÖ»úÖÆ·ÖÎö

ÑîɳÖÞ (pubb@163.net)¹ú·À¿Æ¼¼´óѧ¼ÆËã»úѧԺ
2003 Äê 5 ÔÂ 19 ÈÕ
×Ô´Ó¶àÏ̱߳à³ÌµÄ¸ÅÄî³öÏÖÔÚ Linux ÖÐÒÔÀ´£¬Linux ¶àÏßÓ¦Óõķ¢Õ¹×ÜÊÇÓëÁ½¸öÎÊÌâÍѲ»¿ª¸Éϵ£º¼æÈÝÐÔ¡¢Ð§ÂÊ¡£±¾ÎÄ´ÓÏß³ÌÄ£ÐÍÈëÊÖ£¬Í¨¹ý·ÖÎöÄ¿Ç° Linux ƽ̨ÉÏ×îÁ÷ÐÐµÄ LinuxThreads Ï߳̿âµÄʵÏÖ¼°Æä²»×㣬ÃèÊöÁË Linux ÉçÇøÊÇÈçºÎ¿´´ýºÍ½â¾ö¼æÈÝÐÔºÍЧÂÊ ......

LinuxÒ³¿ò¼¶ÄÚ´æ¹ÜÀí´¦Àíϸ½Ú

ŪÇå³þ»ï°éϵͳËã·¨µÄÔ­ÀíÒÔºó£¬ÎÒÃǾͿÉÒÔ¿ª¿ªÐÄÐĵش¦ÀíÒ³¿òÁË¡£
ÎÒÃÇ¿ÉÒÔͨ¹ý6¸öÉÔÓвî±ðµÄº¯ÊýºÍºêÇëÇóÒ³¿ò¡£Ò»°ãÇé¿öÏ£¬ËûÃǶ¼·µ»ØµÚÒ»¸öËù·ÖÅäÒ³µÄÏßÐÔµØÖ·£¬»òÕß·ÖÅäʧ°ÜÔò·µ»ØNULL¡£
alloc_pages(gfp_mask, order)£ºÓÃÕâ¸öº¯ÊýÇëÇó2order ¸öÁ¬ÐøµÄÒ³¿ò¡£Ëû·µ»ØµÚÒ»¸öËù·ÖÅäÒ³¿òÃèÊö·ûµÄµØÖ·£¬»òÕßÈç¹ûʧ°Ü£¬Ôò·µ ......

LinuxÏ DHCP·þÎñÆ÷°²×°ÓëÅäÖÃ

½ñÌ죬ÎÒÏëÔÚLinuxÏÂÅäÖÃһ̨DHCP·þÎñÆ÷£¬¸Ð¾õÉϱȽÏÖ±¹Û£¬ÄѶÈÉÔ΢Óеã´ó£¨Ïà¶ÔÓÚÔÚwindows¼°Â·ÓÉÆ÷Ï£©¡£
DHCP£¨Dynamic Host Configure Protocol,¶¯Ì¬Ö÷»úÅäÖÃÎļþ£©£¬ÊÇÒ»¸ö¼ò»¯ÊÖ¶¯·ÖÅä¼°¹ÜÀíIPµØÖ·µÄ·³ÄÕ¡£DHCPÊÇ»ùÓÚC/SģʽµÄ¡£
ĬÈÏ£¬ÔÚRHELÉÏûÓа²×°·þÎñÆ÷×é¼þ¡£²é¿´ÊÇ·ñ°²×°µÄÃüÁî
[root@localhost ~]# rpm - ......

[תÔØ]linuxµÄtestÃüÁî

ÿһÖÖÌõ¼þÓï¾äµÄ»ù´¡¶¼ÊÇÅжÏʲôÊÇÕæʲôÊǼ١£ÊÇ·ñÁ˽âÆ乤×÷Ô­Àí½«¾ö¶¨Äú±àдµÄÊÇÖÊÁ¿Ò»°ãµÄ½Å±¾»¹ÊÇÄú½«ÒýÒÔΪÈٵĽű¾¡£
Shell ½Å±¾µÄÄÜÁ¦Ê±³£±»µÍ¹À£¬µ«Êµ¼ÊÉÏÆäÄÜÁ¦µÄ·¢»ÓÊÜÖÆÓڽű¾×«Ð´ÕßµÄÄÜÁ¦¡£ÄúÁ˽âµÃÔ½¶à£¬Äú¾ÍÔ½ÄÜÏñ±äÏ··¨ËƵØ׫дһ¸öÎļþÀ´Ê¹ÈÎÎñ×Ô¶¯»¯ºÍ¼ò»¯ÄúµÄ¹ÜÀí¹¤×÷¡£
ÔÚ shell ½Å±¾ÖнøÐеÄÃ¿Ò»Ö ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ