91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 273KB
    文件類型: .7z
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-04
  • 語言: 其他
  • 標簽: iocp??ado??udt??zlib??

資源簡介

該版本為20150108最新版,修復了發現的多個BUG,并且添加了部分新特性(詳見工程內的ReadMe)。資源分是為了大家能在下載后,給點評論,不管是好的還是壞的;建議或者是提交BUG都可以。 IOCP_API網絡開發庫的最新升級版測試程序(非源碼);提供測試Demo和詳盡的編碼使用代碼;可用于測試網絡性能和評估IOCP_API開發庫的功能;其中傳統TCP和UDP服務器和客戶端經過較為嚴格的測試,Channel相關的功能僅簡單測試,沒有嚴格測試;突出特點是包含了一個ADO連接池,通常服務程序都與數據庫關聯,包含此連接池的目的就是為了方便在編寫服務程序的同時,不用過多的關心數據庫連接相關的部分。

資源截圖

代碼片段和文件信息

//?Demo.cpp?:?定義應用程序的類行為。
//

#include?“stdafx.h“
#include?“Demo.h“
#include?“DemoDlg.h“

#ifdef?_DEBUG
#define?new?DEBUG_NEW
#endif

//?唯一的一個?CDemoApp?對象
CDemoApp?theApp;

BOOL?CDemoApp::InitInstance()
{
Startup();

//?如果一個運行在?Windows?XP?上的應用程序清單指定要
//?使用?ComCtl32.dll?版本?6?或更高版本來啟用可視化方式,
//則需要?InitCommonControlsEx()。否則,將無法創建窗口。
INITCOMMONCONTROLSEX?InitCtrls;
InitCtrls.dwSize?=?sizeof(InitCtrls);
//?將它設置為包括所有要在應用程序中使用的
//?公共控件類。
InitCtrls.dwICC?=?ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);

CWinApp::InitInstance();

if?(!AfxSocketInit())
{
AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
return?FALSE;
}

//?標準初始化
//?如果未使用這些功能并希望減小
//?最終可執行文件的大小,則應移除下列
//?不需要的特定初始化例程
//?更改用于存儲設置的注冊表項
//?TODO:?應適當修改該字符串,
//?例如修改為公司或組織名
SetRegistryKey(_T(“應用程序向導生成的本地應用程序“));

CDemoDlg?dlg;
m_pMainWnd?=?&dlg;
INT_PTR?nResponse?=?dlg.DoModal();
if?(nResponse?==?IDOK)
{
//?TODO:?在此處放置處理何時用“確定”來關閉
//??對話框的代碼
}
else?if?(nResponse?==?IDCANCEL)
{
//?TODO:?在此放置處理何時用“取消”來關閉
//??對話框的代碼
}

//?由于對話框已關閉,所以將返回?FALSE?以便退出應用程序,
//??而不是啟動應用程序的消息泵。
return?FALSE;
}
int?CDemoApp::ExitInstance()
{
Cleanup();
return?CWinApp::ExitInstance();
}

BOOL?CDemoApp::Startup()
{
XUtil::UnhandledException(this);

Initialize(4?8?1000?10000);
return?TRUE;
}
BOOL?CDemoApp::Cleanup()
{
UnInitialize();
return?TRUE;
}

//?SEH處理
BOOL??CDemoApp::IsWriteDump(VOID)
{
return?TRUE;
}
CHAR*?CDemoApp::GetFileName(VOID)
{
static?TCHAR?szPath[MAX_PATH];

ZeroMemory(szPath?sizeof(szPath));
GetModuleFileName(NULL?szPath?sizeof(szPath));
lstrcpy(szPath?“.dmp“);

return?szPath;
}
LONG??CDemoApp::OnDumpComplete(VOID)
{
return?EXCEPTION_EXECUTE_HANDLER;
}


//數據庫連接池測試
RetCode?CDemoApp::TestDb(VOID)
{
//創建數據庫連接池
ADOPool?*pool?=?XUtil::CreatePool(1?2?“Provider=OraOLEDB.Oracle.1;Data?Source=EQUANT;User?ID=nyg;Password=nyg“);

//從池中獲得一個數據庫連接
ADOConnection?*pConn?=?pool->CreateConn();
????
//獲得記錄集和命令對象
ADORecordset?*rs?=?pConn->CreateRecordSet();
ADOCommand?*cmd?=?pConn->CreateCommand();

//設置命令參數并執行命令
cmd->SetType(ADOCommand::typeCmdText);
cmd->SetText(“select?currprice?from?nyg_rb1405_1min“);
rs->Execute(cmd);

//獲得記錄數
int?count?=?rs->GetRecordCount();

//獲取記錄集
double?price?=?0;
rs->MoveFirst();
while(!rs->IsEOF())
{
rs->GetFieldValue(“currprice“?price);
rs->MoveNext();
}

//釋放記錄集對象和命令對象
pConn->ReleaseRecordSet(rs);
pConn->ReleaseCommand(cmd);

//回收數據庫連接
pool->CloseConn(pConn);
//銷毀連接池
XUtil::DestoryPool(pool);

return?RET_ESUC;
}

RetCode?CDemoApp::TestLogger(VOID)
{
//?創建日志對象
ILogger?*pLogger?=?XUtil::CreateLogger(“C:\\Users\\Administrator\\Desktop\\IOCP_API(2.4)\\bin\\Debug\\log“);
//?設置日志級別
pLogger->SetLevel(LOG_ERROR);

int?count??=?10000;
while?(--count?>?0)
{
//?寫日志
pLogger->LogI(“count=%d\n“?count);
pLogger->LogW(“count=%d\n“?count);
pLogge

評論

共有 條評論