gpt4 book ai didi

c# - 线程终止时调用方法

转载 作者:太空狗 更新时间:2023-10-29 20:45:52 24 4
gpt4 key购买 nike

我有一个启动线程的表单。现在我希望表单在该线程终止时自动关闭。

到目前为止,我找到的唯一解决方案是在表单中添加一个计时器,并在每次计时时检查线程是否处于事件状态。但我想知道是否有更好的方法来做到这一点?

目前我的代码看起来更不像这样

partial class SyncForm : Form {
Thread tr;

public SyncForm()
{
InitializeComponent();
}

void SyncForm_Load(object sender, EventArgs e)
{
thread = new Thread(new ThreadStart(Synchronize));
thread.IsBackground = true;
thread.Start();
threadTimer.Start();
}

void threadTimer_Tick(object sender, EventArgs e)
{
if (!thread.IsAlive)
{
Close();
}
}

void Synchronize()
{
// code here
}
}

最佳答案

BackgroundWorker 类的存在就是为了这种线程管理,让您不必自己动手;它提供了一个 RunWorkerCompleted 事件,您可以直接监听。

关于c# - 线程终止时调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1163992/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com