Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# 多线程

作者:蛋蛋的憂傷   发布日期:2026-06-07   浏览:52

using System;
using System.Threading;

class Program
{
    static void Main()
    {
        // 创建一个新的线程
        Thread thread = new Thread(new ThreadStart(WorkerMethod));

        // 启动线程
        thread.Start();

        // 主线程继续执行
        Console.WriteLine("主线程: 线程已启动");

        // 等待子线程完成
        thread.Join();

        Console.WriteLine("主线程: 子线程已完成");
    }

    static void WorkerMethod()
    {
        // 子线程执行的任务
        for (int i = 0; i < 5; i++)
        {
            Console.WriteLine($"子线程: 进度 {i + 1}/5");
            Thread.Sleep(1000); // 模拟耗时操作
        }
    }
}

解释说明

  1. 创建线程:

    • 使用 Thread 类创建一个新的线程,并传递一个 ThreadStart 委托,该委托指向要在线程中执行的方法 (WorkerMethod)。
  2. 启动线程:

    • 调用 thread.Start() 方法启动新创建的线程。此时,WorkerMethod 方法会在新的线程中执行。
  3. 主线程继续执行:

    • 主线程不会等待子线程完成,而是继续执行后续代码。这里通过 Console.WriteLine 输出一条消息表示子线程已启动。
  4. 等待子线程完成:

    • 使用 thread.Join() 方法使主线程等待,直到子线程完成其任务。这样可以确保在子线程完成之前,主线程不会结束。
  5. 子线程任务:

    • WorkerMethod 是子线程执行的任务。它包含一个简单的循环,模拟一些耗时操作(使用 Thread.Sleep),并在每次迭代时输出进度信息。

这个示例展示了如何在 C# 中创建和管理多线程程序。

上一篇:c# ??

下一篇:c#基础教程

大家都在看

c# 二进制

c# 创建目录

c# socket服务端连接多个客户端

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

c# invoke方法

.net和c#

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站