C#__自定义类传输数据和前台线程和后台线程

// 前台线程和后台线程

// 默认情况下,用Thread类创建的线程是前台线程。线程池中的线程总是后台线程。

// 用Thread类创建线程的时候,可以设置IsBackground属性,表示一个后台线程。

// 前台线程在主函数运行结束后依旧执行,后台线程在主函数执行完毕后不再执行

// DownloadTool类

cs 复制代码
    class DownloadTool
    {
        public string URL { get; private set; }
        public string Message { get; private set; }

        public DownloadTool(string uRL, string message)
        {
            URL = uRL;
            Message = message;
        }
        public void Download()
        {
            Console.WriteLine("从" + URL + "中下载");
        }
    }

// 主程序

cs 复制代码
    class Program
    {
        static void Main(string[] args)
        {
            DownloadTool download = new DownloadTool("http://www......", "manager");
            Thread t = new Thread(download.Download); 
            t.Start(); // 从http://www......中下载

            // 前台线程和后台线程
            // 默认情况下,用Thread类创建的线程是前台线程。线程池中的线程总是后台线程。
            // 用Thread类创建线程的时候,可以设置IsBackground属性,表示一个后台线程。
            // 前台线程在主函数运行结束后依旧执行,后台线程在主函数执行完毕后不再执行
            var t1 = new Thread(ThreadMain) { IsBackground = true };
            t1.Start();
            Console.WriteLine("Main thread ending now.");

            //Main thread ending now.
            //Thread + stared // 线程同步有一定的时间运行
        }
        static void ThreadMain()
        {
            Console.WriteLine("Thread +" + Thread.CurrentThread.Name + "stared");
            Thread.Sleep(2000);
            Console.WriteLine("Thread +" + Thread.CurrentThread.Name + "end");
        }
    }
相关推荐
ctlover6 分钟前
Python高级与正则表达式
开发语言·python
泡海椒8 分钟前
生产环境安全配置:JQuickJavaInvocationGuard自定义防护规则实战
开发语言·python·安全
yume_sibai14 分钟前
07-Rust 异步编程完全指南(async/await + Tokio + Future + 并发原语 + 异步流)
开发语言·后端·rust
linx29520 分钟前
单元七 · 零基础路线图-第 1–3 周·变量、类型与字符串
c语言·开发语言·数据结构·c++·算法
geovindu27 分钟前
java: Strategy Pattern
java·开发语言·后端·设计模式·策略模式·行为模式
念越32 分钟前
Python基础语法(一):变量、类型与程序控制流
开发语言·网络·python
资讯综合1 小时前
2026全国云渲染网站排名 不同需求用户适配榜单
开发语言·前端·javascript
aramae1 小时前
模拟实现strcpy(字符串拷贝)(C语言)
java·c语言·开发语言·算法
PHP实战开发录1 小时前
PHP接口超时后为什么任务还在跑
开发语言·前端·php·开发
m0_734571761 小时前
深入理解C++ 构造函数<十一> initializer_list 构造
开发语言·c++