下面有关java threadlocal说法正确的有?

标签: Java 线程
2人阅读 评论(0) 收藏 举报
分类:

下面有关java threadlocal说法正确的有?
 
 A. ThreadLocal存放的值是线程封闭,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递
 
  B. 线程的角度看,每个线程都保持一个对其线程局部变量副本的隐式引用,只要线程是活动的并且 ThreadLocal 实例是可访问的;在线程消失之后,其线程局部实例的所有副本都会被垃圾回收
 
 C. 在Thread类中有一个Map,用于存储每一个线程的变量的副本。
 
 D. 对于多线程资源共享的问题,同步机制采用了“以时间换空间”的方式,而ThreadLocal采用了“以空间换时间”的方式

ThreadLocal类用于创建一个线程内部的局部变量。
  在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值就是线程的变量的副本。通过ThreadLocalsget()方法可以获取该线程变量的本地副本,在get方法之前要先set,否则就要重写initialValue()方法。
  
ThreadLocal的使用场景:
数据库连接:在多线程中,如果使用懒汉式的单例模式创建Connection对象,由于该对象是共享的,那么必须要使用同步方法保证线程安全,这样当一个线程在连接数据库时,那么另外一个线程只能等待。这样就造成性能降低。
如果改为哪里要连接数据库就来进行连接,那么就会频繁的对数据库进行连接,性能还是不高。


答案:A B C D

查看评论

有画快说番外篇

-
  • 1970年01月01日 08:00

Java笔试面试题整理第一波

1、Java变量 Java中主要有如下几种类型的变量 局部变量类变量(静态变量)-- 属于类成员变量(非静态变量)-- 属于对象 2、关于枚举 package com.scu.lly; ...
  • shakespeare001
  • shakespeare001
  • 2016-04-14 15:04:29
  • 14951

下列有关Servlet的生命周期,说法不正确的是?

下列有关Servlet的生命周期,说法不正确的是? 正确答案: Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载...
  • fascinatingGirl
  • fascinatingGirl
  • 2016-08-26 10:56:27
  • 4243

C++小题(六)

/* volatile的作用是: 作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值. 简单地说就是防止编译器对代码进行优化.比如如下程序: XBYTE[2]=0x55; XBY...
  • gettogetto
  • gettogetto
  • 2015-12-30 15:28:47
  • 429

2015-07-31 java错题

5 下面有关webservice的描述,错误的是? 正确答案: B   你的答案: C (错误) Webservice是跨平台,跨语言的远程调用技术 Webservice通信机制实质就是jso...
  • persist213
  • persist213
  • 2015-07-31 10:30:48
  • 420

数据库校招笔试题(1)

事务的持续性是指?A A.事务一旦提交,对数据库的改变是永久的 –持续性 B.事务包括的所有操作要么都做,要么不做 –原子性 C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 –隔离性...
  • u011102153
  • u011102153
  • 2015-09-02 22:03:46
  • 2713

下面有关继承、多态、组合的描述,说法错误的是?

下面有关继承、多态、组合的描述,说法错误的是?A、封装,把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏 B、继承可以使用现有类的所有功能,并在...
  • zscfa
  • zscfa
  • 2017-07-25 10:10:58
  • 281

下列有关静态成员函数的描述中,正确的是:

下列有关静态成员函数的描述中,正确的是: A、静态数据成员可以在类体内初始化 B、静态数据成员不可以被类对象调用 C、静态数据成员不受private控制符作用 D、静态数据成员可以直接用类名调...
  • zscfa
  • zscfa
  • 2017-07-21 21:57:17
  • 333

有关Spring事务的传播特性

做了一道面试的选择题,讲的是spring的事务传播特性,如下:下面有关SPRING的事务传播特性,说法错误的是?A: PROPAGATION_SUPPORTS:支持当前事务,如果当前没有事务,就以非事...
  • yannanying
  • yannanying
  • 2015-04-07 23:48:54
  • 1292

Java之路第一天

测试题目: 3、Java平台有三个版本,分别是javaSE、JavaME、javaEE,下列说法不正确的是(B) A.javaSE是指Java语言的标准版    B.javaME是指Java语言的...
  • qq_18608633
  • qq_18608633
  • 2016-12-04 00:15:08
  • 265
    个人资料
    等级:
    访问量: 0
    积分: 152
    排名: 0