将多个参数传递给 BeginInvoke()

Pass multiple parameters to BeginInvoke()

我的逻辑很简单(如我所想)。

public static void NotifyAboutNewJob(int jobId, bool forceSending = false)
{
        Action<int> notifier = SendAppleNotifications;
        notifier.BeginInvoke(jobId, null, null);
}

方法 SendAppleNotifications 有一个参数 a,很容易将其传递给 BeginInvoke。现在我添加了第二个参数 forceSending。还有问题——我不知道如何将它传递给 BeginInvoke

我应该将它作为第 3 个参数传递给 object 吗?

private static void SendAppleNotifications(int jobId, bool forceSending = false){...}

或者这是答案:

Action<int, bool> notifier = SendAppleNotifications;
notifier.BeginInvoke(jobId, forceSending, null, null);

将您的 Action<int> 更改为 Action<int, bool>

Action<int, bool> notifier = SendAppleNotifications;
notifier.BeginInvoke(jobId, forceSending, null, null); // You can now pass true or false as 2nd parameter.

那么它应该可以正常工作。