锘??xml version="1.0" encoding="utf-8" standalone="yes"?>一本色道久久综合狠狠躁,亚洲精品国产字幕久久不卡,欧美一区二区久久精品http://m.shnenglu.com/lovelypig/category/1218.html浠g爜鏄拻璇?鎴戞槸欖旀硶甯?/description>zh-cnMon, 19 May 2008 20:49:36 GMTMon, 19 May 2008 20:49:36 GMT60- FTP鎵弿鍣?綰ū涔?http://m.shnenglu.com/lovelypig/archive/2006/12/13/16345.html姍欏瓙姍欏瓙Tue, 12 Dec 2006 16:19:00 GMThttp://m.shnenglu.com/lovelypig/archive/2006/12/13/16345.htmlhttp://m.shnenglu.com/lovelypig/comments/16345.htmlhttp://m.shnenglu.com/lovelypig/archive/2006/12/13/16345.html#Feedback0http://m.shnenglu.com/lovelypig/comments/commentRss/16345.htmlhttp://m.shnenglu.com/lovelypig/services/trackbacks/16345.html闃呰鍏ㄦ枃

]]> - ACE_Rector + UDP 鎶ラ敊. .http://m.shnenglu.com/lovelypig/archive/2006/10/20/13890.html姍欏瓙姍欏瓙Fri, 20 Oct 2006 02:10:00 GMThttp://m.shnenglu.com/lovelypig/archive/2006/10/20/13890.htmlhttp://m.shnenglu.com/lovelypig/comments/13890.htmlhttp://m.shnenglu.com/lovelypig/archive/2006/10/20/13890.html#Feedback0http://m.shnenglu.com/lovelypig/comments/commentRss/13890.htmlhttp://m.shnenglu.com/lovelypig/services/trackbacks/13890.html聽
#include聽
"
stdafx.h
"
#include聽
"
ace/OS_NS_time.h
"
#include聽
"
ace/Log_Msg.h
"
#include聽
"
ace/Reactor.h
"
#include聽
"
ace/Event_Handler.h
"
#include聽
"
ace/INET_Addr.h
"
#include聽
"
ace/SOCK_Dgram.h
"
#include聽
"
ace/TP_Reactor.h
"
#include聽
"
ace/WFMO_Reactor.h
"
class
聽ClientRecv聽:聽
public
聽ACE_Event_Handler

{
public
:

聽聽聽聽
virtual
聽
~
ClientRecv聽()
{}
聽聽聽聽
int
聽open聽(
const
聽ACE_INET_Addr聽
&
bind_addr);

聽聽聽聽
//
聽Get聽this聽handler's聽I/O聽handle.
聽聽聽聽
virtual
聽ACE_HANDLE聽get_handle聽(
void
)聽
const
聽聽聽聽
{聽
return
聽
this
->
udp.get_handle();聽}
聽聽聽聽
virtual
聽
int
聽handle_input聽(ACE_HANDLE聽fd聽
=
聽ACE_INVALID_HANDLE);

聽聽聽聽
//
聽Called聽when聽this聽handler聽is聽removed聽from聽the聽ACE_Reactor.
聽聽聽聽
virtual
聽
int
聽handle_close聽(ACE_HANDLE聽handle,
聽聽聽聽聽聽聽聽ACE_Reactor_Mask聽close_mask);
聽聽聽聽
聽聽聽聽ACE_SOCK_Dgram聽udp;
}
;


int
ClientRecv::open聽(
const
聽ACE_INET_Addr聽
&
bind_addr)

{
聽聽聽聽
if
聽(
this
->
udp.open聽(bind_addr,聽
1
)聽
==
聽
-
1
)
聽聽聽聽聽聽聽聽ACE_ERROR_RETURN聽((LM_ERROR,
聽聽聽聽聽聽聽聽ACE_TEXT聽(
"
%p\n
"
),
聽聽聽聽聽聽聽聽ACE_TEXT聽(
"
udp.open
"
)),
聽聽聽聽聽聽聽聽
-
1
);
聽聽聽聽
聽聽聽聽
return
聽
this
->
reactor聽()
->
register_handler
聽聽聽聽聽聽聽聽(
this
,聽ACE_Event_Handler::READ_MASK聽);
}
int
聽
ClientRecv::handle_close聽(ACE_HANDLE聽handle,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽ACE_Reactor_Mask聽close_mask)

{
聽聽聽聽
if
聽(close_mask聽
==
聽ACE_Event_Handler::WRITE_MASK)
聽聽聽聽聽聽聽聽
return
聽
0
;
聽聽聽聽close_mask聽
=
聽ACE_Event_Handler::ALL_EVENTS_MASK聽
|
聽聽聽聽聽聽聽聽ACE_Event_Handler::DONT_CALL;
聽聽聽聽
this
->
reactor聽()
->
remove_handler聽(
this
,聽close_mask);
聽聽聽聽
this
->
udp.close();
聽聽聽聽delete聽
this
;
聽聽聽聽
return
聽
0
;
}
int
聽
ClientRecv::handle_input聽(ACE_HANDLE聽fd聽)

{

聽聽聽聽
char
聽聽buffer[
8192
]聽
=
聽
{
0
}
;
聽聽聽聽ACE_INET_Addr聽聽peer_addr;
聽聽聽聽
if
(
-
1
聽
==
聽
this
->
udp.recv(buffer,
8192
,peer_addr))
聽聽聽聽聽聽聽聽ACE_ERROR_RETURN聽((LM_ERROR,
聽聽聽聽聽聽聽聽ACE_TEXT聽(
"
%p\n
"
),
聽聽聽聽聽聽聽聽ACE_TEXT聽(
"
udp.recv
"
)),
聽聽聽聽聽聽聽聽
-
1
);
聽聽聽聽
聽聽聽聽ACE_DEBUG((LM_INFO,
"
%s\n
"
,peer_addr.get_host_addr()));
聽聽聽聽
return
聽
0
;
}
DWORD聽WINAPI聽LoopThread(LPVOID聽lparam)

{
聽聽聽聽ACE_Reactor::instance聽()
->
run_reactor_event_loop聽();
聽聽聽聽
return
聽聽
0
;
}
int
聽_tmain(
int
聽argc,聽_TCHAR
*
聽argv[])

{
聽聽聽聽ACE_INET_Addr聽bind_addr(
10703
);
聽聽聽聽ClientRecv聽聽client;
聽聽聽聽聽聽聽聽client.reactor(ACE_Reactor::instance聽());聽聽
聽聽聽聽
if
(
-
1
聽
==
聽client.open(bind_addr))

聽聽聽聽
{
聽聽聽聽聽聽聽聽
return
聽
-
1
;
聽聽聽聽}
聽聽聽聽
聽聽聽聽CreateThread(NULL,NULL,LoopThread,
0
,
0
,
0
);
聽聽聽聽ACE_INET_Addr聽send_addr;
聽聽聽聽
for
(
int
聽i
=
1024
;i
<
3333
;i
++
)

聽聽聽聽
{
聽聽聽聽聽聽聽聽ACE_DEBUG((LM_INFO,
"
%d聽\n
"
,i));
聽聽聽聽聽聽聽聽send_addr.
set
(i,
"
192.168.3.147
"
);
聽聽聽聽聽聽聽聽Sleep(
5000
);
聽聽聽聽聽聽聽聽
if
(client.udp.send(
"
ttt
"
,
3
,send_addr)聽
==
聽
-
1
)

聽聽聽聽聽聽聽聽
{
聽聽聽聽聽聽聽聽聽聽聽聽ACE_DEBUG((LM_INFO,
"
%p
"
));
聽聽聽聽聽聽聽聽聽聽聽聽
break
;
聽聽聽聽聽聽聽聽}
聽聽聽聽}
聽聽聽聽system(
"
pause
"
);
聽聽聽聽ACE_Reactor::instance聽()
->
end_reactor_event_loop聽();
聽聽聽聽
return
聽
0
;
}
鎶ラ敊:聽
udp.recv:聽connection聽reset聽
p?:聽handle聽is聽not聽a聽socket聽
鑾潪鍙嶅簲鍣ㄥ彧鑳界敤浜嶵CP? , 娌″姙娉曪紝鍏堢敤WSAAsyncSelect鍚с?
]]>- ACE_NT_Servicehttp://m.shnenglu.com/lovelypig/archive/2006/08/31/11878.html姍欏瓙姍欏瓙Thu, 31 Aug 2006 01:15:00 GMThttp://m.shnenglu.com/lovelypig/archive/2006/08/31/11878.htmlhttp://m.shnenglu.com/lovelypig/comments/11878.htmlhttp://m.shnenglu.com/lovelypig/archive/2006/08/31/11878.html#Feedback2http://m.shnenglu.com/lovelypig/comments/commentRss/11878.htmlhttp://m.shnenglu.com/lovelypig/services/trackbacks/11878.html
#include聽
"
ace/Singleton.h
"
#include聽
"
ace/Mutex.h
"
#include聽
"
ace/Event_Handler.h
"
#include聽
<
ace
/
NT_Service.h
>
#include聽
<
ace
/
Log_Msg.h
>
#include聽
<
iostream
>
using
聽
namespace
聽std;

class
聽MYService:
public
聽ACE_NT_Service

{
聽聽聽聽
bool
聽m_stop;
public
:
聽聽聽聽MYService():ACE_NT_Service(
"
MyACEService_4
"
,
0
,ACE_NT_SERVICE_START_TIMEOUT,

聽聽聽聽聽聽聽聽聽聽聽聽SERVICE_WIN32_OWN_PROCESS聽
|
聽SERVICE_INTERACTIVE_PROCESS),m_stop(
false
)
{
聽聽聽聽聽聽聽聽}
聽聽聽聽
virtual
聽
int
聽svc聽(
void
);
聽聽聽聽
virtual
聽
void
聽handle_control聽(DWORD聽control_code);

聽聽聽聽
virtual
聽
~
MYService()
{}
}
;

typedef聽ACE_Singleton
<
MYService,聽ACE_Mutex
>
聽SERVICE;

int
聽MYService::svc聽(
void
)

{
聽聽聽聽report_status聽(SERVICE_RUNNING);
聽聽聽聽
while
(
!
m_stop)

聽聽聽聽
{
聽聽聽聽聽聽聽聽Sleep(
2000
);
聽聽聽聽聽聽聽聽MessageBox(NULL,
"
aaa
"
,
"
error
"
,
0
);
聽聽聽聽}
聽聽聽聽
return
聽
0
;
}
void
聽MYService::handle_control聽(DWORD聽control_code)

{
聽聽聽聽
if
聽(control_code聽
==
聽SERVICE_CONTROL_SHUTDOWN
聽聽聽聽聽聽聽聽
||
聽control_code聽
==
聽SERVICE_CONTROL_STOP)

聽聽聽聽
{
聽聽聽聽聽聽聽聽report_status聽(SERVICE_STOP_PENDING);
聽聽聽聽聽聽聽聽m_stop聽
=
聽
true
;
聽聽聽聽}
聽聽聽聽ACE_NT_Service::handle_control聽(control_code);
}
ACE_NT_SERVICE_DEFINE聽(MyACEService_4,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽MYService,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽ACE_TEXT聽(
"
MyACEService_4
"
));

int
聽main(
int
聽argc,聽_TCHAR
*
聽argv[])

{
聽聽聽聽
聽聽聽聽ACE::init聽();
聽聽聽聽ACE_NT_SERVICE_RUN聽(MyACEService_4,
聽聽聽聽聽聽聽聽SERVICE::instance聽(),
聽聽聽聽聽聽聽聽ret);
聽聽聽聽
聽聽聽聽ACE::fini聽();


/**/
/*
聽聽聽聽瀹夎鏈嶅姟
聽聽聽聽聽聽聽聽聽ACE::init聽();
聽聽聽聽SERVICE::instance()->insert();
聽聽聽聽ACE::fini聽();
*/
聽聽聽聽
return
聽
0
;
}

]]> - ACE鐨勫唴瀛樼鐞?/title>http://m.shnenglu.com/lovelypig/archive/2006/08/30/11851.html姍欏瓙姍欏瓙Wed, 30 Aug 2006 06:43:00 GMThttp://m.shnenglu.com/lovelypig/archive/2006/08/30/11851.htmlhttp://m.shnenglu.com/lovelypig/comments/11851.htmlhttp://m.shnenglu.com/lovelypig/archive/2006/08/30/11851.html#Feedback0http://m.shnenglu.com/lovelypig/comments/commentRss/11851.htmlhttp://m.shnenglu.com/lovelypig/services/trackbacks/11851.html闃呰鍏ㄦ枃

]]>
99久久无色码中文字幕人妻|
色婷婷综合久久久中文字幕|
国产精品岛国久久久久|
韩国免费A级毛片久久|
99久久亚洲综合精品成人|
开心久久婷婷综合中文字幕|
久久精品国产精品亚洲精品|
亚洲国产成人久久精品影视
|
欧美成a人片免费看久久|
伊人久久久AV老熟妇色|
色综合久久综精品|
国产偷久久久精品专区|
久久AⅤ人妻少妇嫩草影院|
三上悠亚久久精品|
午夜精品久久久久|
久久精品国产91久久综合麻豆自制|
久久午夜综合久久|
久久九九亚洲精品|
色狠狠久久AV五月综合|
性做久久久久久久久久久|
国产精品久久一区二区三区
|
日产精品99久久久久久|
久久婷婷色综合一区二区|
精品一区二区久久|
久久久无码精品亚洲日韩蜜臀浪潮|
日韩一区二区三区视频久久|
2020最新久久久视精品爱|
久久久久人妻精品一区|
久久婷婷午色综合夜啪|
久久乐国产综合亚洲精品|
亚洲人成电影网站久久|
久久无码一区二区三区少妇|
久久午夜综合久久|
久久影院久久香蕉国产线看观看|
欧美伊香蕉久久综合类网站|
97久久超碰国产精品旧版|
久久精品男人影院|
99久久国产热无码精品免费久久久久|
久久青青草原精品影院|
伊人久久综合热线大杳蕉下载|
成人国内精品久久久久影院VR|