zoukankan      html  css  js  c++  java
  • Silverlight跨线程问题解决办法

    方法一:使用DependencyObject.Dispatcher.BeginInvoke 方法

    private void btnThread1_Click(object sender, RoutedEventArgs e)
    {
    new Thread(() => {
    this.Dispatcher.BeginInvoke(() => { MessageBox.Show("Hello World"); });
    }).Start(); } 

    方法二:使用SynchronizationContext 对象

    private void btnThread1_Click(object sender, RoutedEventArgs e)
    {
    SynchronizationContext context = SynchronizationContext.Current;
    new Thread(() => { context.Post((state) => { MessageBox.Show("Hello World"); }, null); }).Start();


    方法三:System.Windows.Deployment

    new Thread(() => {
    new Thread(() => {
    System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() => { MessageBox.Show("Hello World"); }); 

    }).Start();

     }).Start();

  • 相关阅读:
    视图容器组件使用
    组件的学习
    伸展树
    二叉搜索树
    二叉树
    笛卡尔树
    二叉堆
    vim配置
    使用vim-pathogen 进行插件管理
    C/C++中的变量和静态变量
  • 原文地址:https://www.cnblogs.com/liancs/p/3879292.html
Copyright © 2011-2022 走看看