//一个串口设备的二次开发接口
API api = new API();//载入
private void main_load()
{
Thread a = new Thread(new ThreadStart(ThreadInit));
a.Start();
}//线程执行体
private void api_init()
{
//二次接口的初始化,需要5秒左右的初始化时间
api.init();
}//线程入口
private void ThreadInit()
{
api_init();
}===============================如上面所示,api.init()方法需要占用5秒左右的时间。为了避免主程序UI线程假死,我把它的初始化放入到了线程去执行。可是依然会假死。我是不是哪里做错了呢?请各位大师帮忙解答,感激不尽。
API api = new API();//载入
private void main_load()
{
Thread a = new Thread(new ThreadStart(ThreadInit));
a.Start();
}//线程执行体
private void api_init()
{
//二次接口的初始化,需要5秒左右的初始化时间
api.init();
}//线程入口
private void ThreadInit()
{
api_init();
}===============================如上面所示,api.init()方法需要占用5秒左右的时间。为了避免主程序UI线程假死,我把它的初始化放入到了线程去执行。可是依然会假死。我是不是哪里做错了呢?请各位大师帮忙解答,感激不尽。
pMethodInvoker.BeginInvoke(null, null);
a.IsBackground = true;
a.Start();
a.IsBackground = true;
a..Start();
private void ThreadInit()
{
MethodInvoker mi = new MethodInvoker(api_init);
this.BeginInvoke(mi);
}private void api_init()
{
//二次接口的初始化,需要5秒左右的初始化时间
api.init();//
}