调试时,我发现我的程序在
之后停止了myServer->调用(myServer-> myShowMessage);
我试图找到它的位置,我设置了几个休息但我没有找到它的位置。但是,我还在ShowMessageMethod设置了它应该去的地方,但我相信它不会那只是处理其他事情并陷入其中。我怀疑UI线程有问题,但我对Windows消息中的底层知之甚少。我在主线程中创建了一些其他线程,是不是让事情变得不同?我只是遵循msdn上的Invoke方法代码。这是我的代码:
Server::Server(){
InitializeComponent();
myShowMessage = gcnew ShowMessageDelegate(this,&Server::ShowMessageMethod);
}
System::Void Server::start_Click(System::Object^ sender, System::EventArgs^ e){
Thread^ myThread = gcnew Thread(gcnew ThreadStart(this,&Server::ListenThreadFunc));
myThread->Start();
}
void Server::ShowMessageMethod(){
String^ message = "Get Successful";
this->APTBX->AppendText(message);
}
void Server::ListenThreadFunc(){
ServerListen^ mySL = gcnew ServerListen(this);
mySL->ListenThread();
}
ServerListen::ServerListen(Server^ _s){
myServer = _s;
}
void ServerListen::ListenThread(){
array<Object^>^myStringArray = { convert.toStringDelegate(information) };
Object^ re = myServer->Invoke(myServer->myShowMessage);
}
提前感谢。