Joe*_*Gfd 2 c# parameters multithreading
我在主线程中有一个"字符串"和一个"StreamReader".我想将这些传递给一个将流读取器读入字符串的线程.我希望在主线程中更改该字符串.我的问题是我该怎么做?
附加信息:我有具体的原因,为什么我想要解决这个问题,所以请坚持规范.另外,我不能使用TPL,因为我无法获得框架4.0 ...再次出于特定原因.
所以你用一个string
和一个StreamReader
属性创建一个类.您使用该类的实例传递给其他线程ParameterizedThreadStart
.你有其他的线程通过写入string
你班级的那个实例上的属性来填充毛茛.
线程完成后,您string
的类实例上的属性将被填满.好极了.
所以像
class Foo {
public string Bar { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后:
Foo foo = new Foo();
var thread = new Thread(o => { Foo f = (Foo)o; f.Bar = "FillMeUpButterCup"; });
thread.Start(foo);
thread.Join();
Console.WriteLine(foo);
Run Code Online (Sandbox Code Playgroud)
哇!
我离开了,StreamReader
但现在你明白了.