zoukankan      html  css  js  c++  java
  • 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();

  • 相关阅读:
    多线程编程:阻塞、并发队列的使用总结
    为什么阿里的程序员那么帅?---原来他们都有"编码规约扫描"神器在手
    多线程编程:多线程并发制单的开发记录【一】
    如何使用线程锁来提高多线程并发效率
    如何在分布式环境中同步solr索引库和缓存信息
    前端性能优化指南
    DOM操作方法、属性
    CSS样式手册
    XSS跨站脚本攻击
    数组和对象的使用方法
  • 原文地址:https://www.cnblogs.com/lisong-home/p/7689449.html
Copyright © 2011-2022 走看看