欢迎光临
我们一直在努力

有趣的多线程编程(2)——线程中的参数传递-.NET教程,算法/线程

建站超值云服务器,限时71元/月

使用类、类的方法或类的属性都可以向线程传递参数:
public
class urldownloader { string url; public urldownloader (string url) { this.url = url; } public void download() {
webclient wc = new webclient();
console.writeline("downloading " + url); byte[] buffer = wc.downloaddata (url); string download = encoding.ascii.getstring(buffer); console.writeline(download); console.writeline("download successful.");
//这里你可以将download进行保存等处理...... } } [... 在另一个类中使用它们...] urldownloader downloader = new urldownloader (yoururl); new thread (new threadstart (downloader.download)).start();
注意参数是如何传递的。
在.net 2.0中还可以这样:
(code-beside)
方式一:
threadstart starter = delegate { download(yoururl); });
new thread(starter).start();
//使用线程池
waitcallback callback = delegate (object state) { download ((string)state); };
threadpool.queueuserworkitem (callback, yoururl);
方式二(使用parameterizedthreadstart):
thread t = new thread (new parameterizedthreadstart(downloadurl));
t.start (myurl);

static void downloadurl(object url)
{
    // ....
}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 有趣的多线程编程(2)——线程中的参数传递-.NET教程,算法/线程
分享到: 更多 (0)