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

    ThreadLocal:

    ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为ThreadLocalVariable更容易让人理解一些。

    实现思路:在ThreadLocal类中定义了一个ThreadLocalMap类,每一个Thread中都有一个该类型的变量——threadLocals——用于存储每一个线程的变量副本,Map中元素的键为线程对象

    其实值还是在Thread的属性threadLocals中存着,只是ThreadLocal内置的实现和访问提供了而已.我们完全可以给Thread添加额外的属性用于存储数据,但是如果线程的开启过程不是由我们控制的,比如web项目中的多用户访问线程,这时ThreadLocals内置实现就很必要了.

    Thread.currentThread().和Thread.的区别:

    如果是继承Thread则二者效果一样,Thread.其实就是作用于当前Thread的,但是如果实现runnable接口,那么Thread.的方法是不存在的,只能先获取currentThread()然后再"."了.

  • 相关阅读:
    和阿木聊Node.js
    C#开发攀爬集锦
    MyBatis实战
    对于技术的思考
    抛物线习题
    变量集中策略
    变换作图中的常用模板函数
    网上看到一题目的解法的启示
    函数习题
    新定义习题
  • 原文地址:https://www.cnblogs.com/wangjianbg/p/3441867.html
Copyright © 2011-2022 走看看