The project is under vs2003, And the createthread function is used. It indicates that createthread should not be called on the Internet, but _ beginthreadex should be used. Because it is used, write the usage of parameters in createthread.
See the Code:
First, define the parameter struct to be passed:
Typedef struct sparam
{
Int no;
Unsigned short chnlid;
Unsigned short sessionid;
} Uparam, * sparam;
DWORD winapi accountmanager (pvoid pparam );
Void main ()
{
DWORD dwthreadid;
Handle hthrd = NULL; // thread handle
Sparam;
Sparam * P;
Sparam. No = 1;
Sparam. chnlid = 1;
Sparam. sessionid = 1;
P = & sparam;
Hthrd = (handle) createthread (null,
0,
Accountmanager,
P,
0,
Dwthreadid;
}
DWORD winapi accountmanager (pvoid pparam)
{
Sparam;
Sparam = (sparam) pparam;
Try
{
/* Run is a self-written method. Run (int I, unsigned short chnlid, unsigned short sessionid )*/
Run (sparam-> NO, sparam-> chnlid, sparam-> sessionid );
}
Catch (...)
{
Logger. Error ("accountmanager (% d): System error. \ r \ n", threadid );
}
}
In general, the code is for reference only.