【发布时间】:2014-07-29 05:30:44
【问题描述】:
我发现了几篇关于参数数量可变的代表的帖子,但我太厚了,无法理解它们的含义以及它们如何应用于我的情况。
这是我在主窗体中的内容:
public delegate void Report( params Object[] args );
...
public partial class Main : Form
{
public ReportDelegate m_dlgtReport;
...
public Main()
{
InitializeComponent();
m_dlgtReport = new ReportDelegate( this.Report );
...
}
private void Report( params Object[] args )
{
if( args.Length > 0 )
{
string s1 = (string)args[ 0 ];
}
...
}
这就是我从线程中调用它的方式:
m_Main.Invoke(
m_Main.m_dlgtReport,
new Object[] {
"text",
101,
true
} );
m_Main.Invoke(
m_Main.m_dlgtReport,
new Object[] {
"text"
} );
编译器运行它,但应用程序崩溃。
任何人都可以对我说真的,真的很慢,或者只是修复上面的代码,我会研究它?
谢谢大家,好心人。
【问题讨论】:
标签: c# multithreading parameters delegates