#include <stdio.h> #include <windows.h> #include <iostream.h> #include <process.h> #define UM_MSG1 WM_USER+1 #define UM_MSG2 WM_USER+2 DWORD WINAPI Thread1(LPVOID para) { DWORD dwThreadId = *(DWORD *)para; DWORD i=0; TCHAR *p; char strTmp[100]; while(TRUE) { Sleep(1700); p=new TCHAR[10]; sprintf(strTmp,"Hello %d %x",i++,p); PostThreadMessage(dwThreadId,UM_MSG1,(WPARAM)strTmp,(LPARAM)p); //delete []p; } return 0; } DWORD WINAPI Thread2(LPVOID para) { char strTmp[100]; DWORD dwThreadId = *(DWORD *)para; DWORD i=0; TCHAR *p; while(TRUE) { Sleep(3000); p=new TCHAR[10]; sprintf(strTmp,"World %d %x",i++,p); PostThreadMessage(dwThreadId,UM_MSG2,(WPARAM)strTmp,(LPARAM)p); //delete []p; } return 0; } int main() { DWORD dwValue =GetCurrentThreadId(); cout<&l