回调函数不是由该函数的实现方直接调用,而是在特定的时间或是条件发生时由另外一方调用的,用于对该事件或是条件进行响应。回调函数实现的机制是:
1、定义一个回调函数;
2、提供函数实现的一方在初始化的时候,将回调函数的函数指针注册给调用者;
3、当特定的事件或是条件发生时,调用者使用函数指针调用回调函数对事件进行处理;
例子:
#define CALLBACK __stdcall
void CALLBACK DisConnectFunc(LONG lLoginID, char *pchDVRIP, LONG nDVRPort, DWORD dwUser)
{
if(dwUser == 0)
{
return;
}
CNetSDKDemoDlg *dlg = (CNetSDKDemoDlg *)dwUser;
dlg->DeviceDisConnect(lLoginID, pchDVRIP,nDVRPort);
}