线程内打开窗体
最近做了个线程,想在线程中打开窗体,结果总是一闪就木有了。在忘了看了下,原来是线程结束后会回收资源。把打开行窗体的资源回收了。
所以在要加点东东:
- private void Form1_Load(object sender, EventArgs e)
- {
- int threadId = Thread.CurrentThread.ManagedThreadId;
- textBox1.Text = threadId.ToString(); //将主线程ID显示在文本框中
- }
- private void button1_Click(object sender, EventArgs e)
- {
- Thread thread2 = new Thread(threadPro);//创建新线程
- thread2.Start();
- }
- public void threadPro()
- {
- textBox2.Text = Thread.CurrentThread.ManagedThreadId.ToString();
- MethodInvoker MethInvo = new MethodInvoker(ShowForm2);
- BeginInvoke(MethInvo);
- }
- public void ShowForm2()
- {
- Form2 f2 = new Form2();
- f2.Show();
- }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端