• Net学习日记_基础提高_10


    进程与线程

    一个进程只有一个线程(一般而言),进程就是在内存里面开辟一块空间,但不仅仅如此。线程去执行代码。

    进程里面默认有个线程。

    如何开启一个线程?System.Threading;线程操作的类在这个命名空间下。

     创建一个线程对象,并为这个线程对象指定要执行的方法。

    private void TestThread(){  };

    .......

    Thread thread = new Thread(TestThread);

    thread.Start();

    前台线程

    进程里面默认的线程,我们叫做主线程、UI线程。

    线程默认(主线程、UI线程)情况下都是前台线程。

    要所有的前台线程退出以后,程序才会退出。

    线程什么时候结束?该线程执行的方法执行完以后,线程就自动退出。

    后台线程

    后台线程只要所有的前台线程结束,后台线程就会立即结束。

    thread.IsBackground = true; //后台线程。 

    线程重入以及解决方法

    1.微软默认:线程之间是不能随便访问的。

       TexBox.CheckForIllegalCrossThreadCalls = false;

       关闭控件的跨线程访问。

    2.多个线程访问同一资源,可能造成不同步的情况,这个叫做线程重入。

    多线程实例:自动摇奖机

    委托(委托的本质是个类)(委托的作用在哪里?下面的ThreadStart)

    委托关键字 delegate

    线程调用带参数的方法

    ThreadStart 这是个委托对象,里面自带delegate;

    首先,Thread首先利用就是自动生成ThreadStart的代码。

    但是这个是不带参数的,利用ThreadStart的可以增加、减少类

    带参数(!!!!!!!!!!!!!)

    注意一点:在Start的地方输入参数。

    传入多个参数,可以利用数组。

    GDI常用方法(画图接口)

    Graphic 类(画图)

     Draw();

  • 相关阅读:
    Spring MVC笔记(二) Hello World实例
    Spring MVC笔记(一) Spring MVC概述
    正则表达式在python中的应用
    Spring与Ibatis整合入门
    Spark GraphX的函数源码分析及应用实例
    Python爬虫获取迅雷会员帐号
    Linux Shell编程学习笔记
    Hadoop在linux下无法启动DataNode解决方法
    Ubuntu中使用终端运行Hadoop程序
    Hadoop2.6.0在Ubuntu Kylin14.04上的配置
  • 原文地址:https://www.cnblogs.com/lisong-home/p/7689449.html
Copyright © 2020-2023  润新知