gpt4 book ai didi

c# - 设置 RunWorkerCompleted 值

转载 作者:太空宇宙 更新时间:2023-11-03 22:14:35 25 4
gpt4 key购买 nike

如果我有一个后台 worker 在它的工作中做一些任务

    String val= getVal("Val");
byte[] b = (byte[])e.Argument;

b = getData.FromPlace(val);

如何将 b 的 vakue 传递给 runworkercompleted 方法?

最佳答案

你可以使用闭包

void Main()
{

var bw = new BackgroundWorker();

byte[] b;

bw.DoWork += (sender, args) => {

b = DoStuff();
};
}

byte[] DoStuff() {

String val= getVal("Val");
byte[] b = (byte[])e.Argument;

b = getData.FromPlace(val);

return b;
}

您还可以在事件参数对象上使用 return Result 属性。我认为这种方式提供了更大的灵 active 。

void Main()
{
var bw = new BackgroundWorker();

bw.DoWork += (sender, args) => {

args.Result = DoStuff();
};

bw.RunWorkerCompleted += (sender, args) => {
var result = args.Result as byte[];
};

bw.RunWorkerAsync();
}

byte[] DoStuff() {
return new byte[10];
}

关于c# - 设置 RunWorkerCompleted 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5499657/

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