1

我正在研究多线程,找到了一些很好的教程,但我还有一些问题。

我想出了如何异步运行一个函数,(请参阅本教程)有四个示例可以实现这一点。

但是在我正在开发的应用程序中,我想在单独的线程中运行整个类。我正在寻找这样的东西:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace multithread_test
{
    class Program
    {
        Program()
        { }
        RunInBackground RIB;

        void StartBackgroundWorker()
        {
            // how do  I get RIB to run in the background?
            RIB = new RunInBackground();
        }

        //somefunction to listen to the CallEventToUpdateGUI
    }


    //This class should run in a different thread than class Program
    class RunInBackground
    {
        void RunInBackground()
        { }

        void Function1()
        {
            //somefunction
        }

        void Function2()
        {
            // somefunction
        }

        void Function3()
        {
            Function1();
        }

        void CallEventToUpdateGUI()
        {
            //call a event to update gui
        }

    }
4

1 回答 1

2

线程是关于代码的执行,而不是关于它的定义。你不可以做这个。您可以做的只是在其他线程上运行代码。

您也可以在另一个线程上实例化一个类,但顺便说一句,它不是定义它。

于 2012-12-12T10:33:54.807 回答