语言

JoinableTaskContext 构造函数

定义

重载

名称 说明
JoinableTaskContext()

初始化类的新实例 JoinableTaskContext ,假设当前线程是主线程,并提供 Current 从另一个线程切换到主线程的方法。

JoinableTaskContext(Thread, SynchronizationContext)

初始化 JoinableTaskContext 类的新实例。

JoinableTaskContext()

初始化类的新实例 JoinableTaskContext ,假设当前线程是主线程,并提供 Current 从另一个线程切换到主线程的方法。

public:
 JoinableTaskContext();
public:
 JoinableTaskContext();
 JoinableTaskContext();
public JoinableTaskContext();
Public Sub New ()

注解

nullCurrent调用此构造函数时,使用的主线程切换到主线程SwitchToMainThreadAsync(CancellationToken)的请求不会导致任何线程切换。 这适用于单元测试环境,其中没有主线程要切换到或进程,否则不定义主线程。 线程安全问题: 在没有同步上下文的情况下配置时,请求主线程的代码可能由于数据争用条件而发生故障。

适用于

JoinableTaskContext(Thread, SynchronizationContext)

初始化 JoinableTaskContext 类的新实例。

public JoinableTaskContext(System.Threading.Thread mainThread = default, System.Threading.SynchronizationContext synchronizationContext = default);
public JoinableTaskContext(System.Threading.Thread? mainThread = default, System.Threading.SynchronizationContext? synchronizationContext = default);
new Microsoft.VisualStudio.Threading.JoinableTaskContext : System.Threading.Thread * System.Threading.SynchronizationContext -> Microsoft.VisualStudio.Threading.JoinableTaskContext
Public Sub New (Optional mainThread As Thread = Nothing, Optional synchronizationContext As SynchronizationContext = Nothing)

参数

mainThread
Thread

要切换到的 SwitchToMainThreadAsync(CancellationToken)线程。 如果 null为当前线程,则假定当前线程为主线程。

synchronizationContext
SynchronizationContext

用于切换到主线程的同步上下文。

如果 null 指定(或省略参数),则将使用当前同步上下文。 如果 Current 也是 null这样,使用的请求切换到主线程 SwitchToMainThreadAsync(CancellationToken) 不会产生任何线程切换。 这适用于单元测试环境,其中没有主线程要切换到或进程,否则不定义主线程。 线程安全问题: 在没有同步上下文的情况下配置时,请求主线程的代码可能由于数据争用条件而发生故障。

适用于