社区
Java SE
帖子详情
java.util.Random类是线程安全类吗?
difficult
2010-10-25 01:09:05
也即可以在多个线程下使用同同一个Random对象吗?
...全文
898
6
打赏
收藏
java.util.Random类是线程安全类吗?
也即可以在多个线程下使用同同一个Random对象吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
macrotea-cn
2010-10-25
打赏
举报
回复
楼主担心多条线程得到一个相同的随机数?
Math.random() 方法更易于使用,此方法是完全同步的,可允许多个线程使用而不出现错误。
底层也是new Random()
chho123
2010-10-25
打赏
举报
回复
额,可以使用同一个对象,对类的对象有了更好的认识
已学习
Java
并发包源码分析(JDK1.8)
Java
并发包源码分析(JDK1.8):囊括了
java
.
util
.concurrent包中大部分
类
的源码分析,其中涉及automic包,locks包(AbstractQueuedSynchronizer、ReentrantLock、ReentrantReadWriteLock、LockSupport等),queue(ArrayBlockingQueue、ConcurrentLinkedDeque、DelayQueue、LinkedBlockingQueue等) ,AQS相关应用(CountDownLatch、CyclicBarrier、Semaphore等),executor(ThreadPoolExecutor、ScheduledThreadPoolExecutor、FutureTask等),collection(ConcurrentHashMap、CopyOnWriteArrayList等),对每个
类
的核心源码进行详细分析,笔记详细,由浅入深,层层深入,带您剖析并发编程原理
java
.
util
.
Random
和Math.
random
()的区别
java
.
util
.
Random
和Math.
random
()的区别
java
.lang.Object
java
.
util
.
Random
该
类
的实例用于生成伪随机数的流。 该
类
使用48位种子,其使用线性同余公式进行修改。 (见Donald Knuth, “计算机编程艺术”,第2卷 ,第3.2.1节) 如果使用相同的种子创建两个
Random
Random
,并且对每个实例进行相同的方法调用序列,则它们将生成并返回相同的数字序列。 为了保证此属性,为
Random
类
Random
。 为了
Java
代码的绝对可移植性,
常用
类
-
java
.
util
.
Random
结果:给
Random
对象设置了随机数种子可以使得这个对象多次运行时产生的随机数固定,但是同一对象一次运行中多次调用方法还是随机的。该
类
的实例用于生成伪随机数的流。该
类
使用48位种子,其使用线性同余公式进行修改。,并且对每个实例进行相同的方法调用序列,则它们将生成并返回相同的数字序列。获取一个加密安全的伪随机数生成器,供安全敏感应用程序使用。扩展:
Random
产生的随机数都是等概率的。如果使用相同的种子创建两个
Random
。但是,跨线程的同时使用。实验:设置随机数种子的作用。
java
.
util
包中一些的
类
java
.
util
.Currency
类
,这个
类
是与货币处理有关的
类
,可结合
java
.
util
.Locale来使用;
java
.
util
.Calendar
类
,这个
类
是与时间操作有关的
类
,获取时间,时间加减,时间比较等;
java
.
util
.Properties
类
,这个
类
是处理properties这
类
配置文件的,支持解析key-value
类
型和xml
类
型两种;
java
.
util
.Timer
类
,
线程环境下生成随机数之
java
.
util
.
Random
与
java
.
util
.concurrent.ThreadLocal
Random
生成伪随机数据
Java
里有伪随机型和安全型两种随机数生成器。伪随机生成器根据特定公式将seed转换成新的伪随机数据的一部分。安全随机生成器在底层依赖到操作系统提供的随机事件来生成数据。 安全随机生成器 需要生成加密性强的随机数据的时候才用它;生成速度慢;如果需要生成(Linux /dev/
random
就是个这样的安全随机生成器)大量随机数据,可能会产生堵塞需要等待外部中断事件
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章