zoukankan      html  css  js  c++  java
  • 多线程

     今天在云和学院学习了多线程

    进程:计算机开启的一个正在运行的软件,在我们的操作系统上成为一个进程。N个进程。

    线程:指的是在一个进程里开辟多个功能来同时执行多件任务。

    前台线程:我们的UI界面使用的是系统给我们默认的前台线程

    后台线程:指的是我们的自己定义的线程对象

    前台线程终止之后,后台线程不会结束。

    后台线程终止之后,前台线程会结束。

    进程:

     Process[] prc = Process.GetProcesses();
                foreach (var item in prc)
                {
                    Console.WriteLine(item);
                }
    Console.ReadKey();
    

     

     bool b = false;
            Thread th = null;
            private void button1_Click(object sender, EventArgs e)
            {
                if(!b)
                {
                    button1.Text = "终止";
                    b = true;
                    Control.CheckForIllegalCrossThreadCalls = false;
                    th = new Thread(Priase);
                    th.Start();
                }
                else
                {
                    button1.Text = "抽奖";
                    b = false;
                    th.Abort();
                    
                }
                    
            }
            private void  Priase()
            {
                Random r = new Random();
                while(true)
                {
                textBox1.Text = r.Next(0,10).ToString();
                textBox2.Text = r.Next(0,10).ToString();
                textBox3.Text = r.Next(0,10).ToString();
                }
            }
    

     

    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    
    namespace 多线程
    {
        class Program
        {
            private static int count = 0;
            static void Main(string[] args)
            {
                var t1 = new Thread(AddCount);
               var t2 = new Thread(AddCount);
                t1.Start();
                t2.Start();
                Console.ReadKey();
            }
            static void AddCount()
            {
                while (true)
                {
    
                    int temp = count;
    
                    Thread.Sleep(1000);
    
                    count = temp + 1;
    
                    Console.WriteLine("我的托管线程ID为:" + Thread.CurrentThread.ManagedThreadId + " 目前count的值为:" + count);
    
                    Thread.Sleep(1000);
    
                }
    
    
            }
        }
    }
    
  • 相关阅读:
    jmeter Transaction Controller、Throughput Controller 控制器
    图书系统的简易代码
    模板简单梳理
    自制过滤器
    自制URL转换器
    URL简单梳理
    window下的Django入门
    十一、常用内建模块
    九、进程与线程
    八、错误、调试与测试
  • 原文地址:https://www.cnblogs.com/songfang/p/4147259.html
Copyright © 2011-2022 走看看