传递方法引用而不是委托

发布于 2024-12-02 08:43:31 字数 550 浏览 0 评论 0原文

调用该方法时:

 Application.Current.Dispatcher.Invoke( someDelegate  , parameters);

我需要创建 someDelegate 指针。我知道如何创建委托,然后使用此函数传递它。委托只是指向方法的指针,因此如果我可以传递引用,那就太好了。换句话说,我不知道是否可以做类似的事情:

Application.Current.Dispatcher.Invoke( someMethod.reference, parameters);

public void someMethod(object o)
{
  // ....
}

或者类似的事情:

Application.Current.Dispatcher.Invoke( ()=> {

   //method

 }, parameters);

我需要使用多个线程,因此如果我不必创建那么多委托,那就太好了。如果我可以在方法内部动态创建它们,那就太好了......

when calling the method:

 Application.Current.Dispatcher.Invoke( someDelegate  , parameters);

I need to create the someDelegate pointer. I know how to create the delegate and then pass it with this function. A delegate is just a pointer to a method so it will be nice if I can pass the reference. In other words I don't know if it is possible to do simething like:

Application.Current.Dispatcher.Invoke( someMethod.reference, parameters);

public void someMethod(object o)
{
  // ....
}

Or something like:

Application.Current.Dispatcher.Invoke( ()=> {

   //method

 }, parameters);

I require to use multiple threads therefore it will be nice if I do not have to create that many delegates. It will be nice if I could create them on the fly inside of the method...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浸婚纱 2024-12-09 08:43:31

试试这个:

Application.Current.Dispatcher.Invoke( new Action(()=> {
   //method
 }), parameters);

Try this:

Application.Current.Dispatcher.Invoke( new Action(()=> {
   //method
 }), parameters);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文