将变量传递给系统的方法.对象参数
本文关键字:方法 对象 参数 系统 变量 | 更新日期: 2023-09-27 18:01:36
我的应用很简单。我使用一个计时器,每15秒执行一个方法。
我的应用程序当前设置有一个回调计时器打开一个方法,创建一个字符串,然后调用我的逻辑方法。
我想做的是在timer方法中创建我的字符串,然后将字符串直接传递给我的逻辑方法。是否有可能将变量传递给系统的方法。对象参数在里面吗?
//This is the piece of code in my timer method (methodA) which calls methodB
ThisTimer = new System.Threading.Timer(new TimerCallback(methodB));
private void methodB(object sender)
{
string theString= "MyString";
methodC(theString);
}
private void methodC(string theString)
{
}
我要做的是
//This code jumps directly from methodA to methodC
string theString= "MyString";
ThisTimer = new System.Threading.Timer(new TimerCallback(methodC(system.object,theString)));
private void methodC(object sender, string theString)
{
}
在为计时器提供回调时,使用lambda关闭您想要使用的变量:
string theString= "MyString";
ThisTimer = new System.Threading.Timer(sender => methodC(theString));
private void methodC(string theString)
{
}
在Timer构造函数中传递TimerCallback所需的对象,如下所示
string str = "something";
Timer t = Timer(methodC, str, 0, 1000);
str对象将被传递给timercallback方法