腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
云霄雨霁
专栏作者
举报
209
文章
238307
阅读量
42
订阅数
订阅专栏
申请加入专栏
全部文章(209)
java(75)
编程算法(62)
其他(30)
数据结构(25)
数据库(24)
sql(12)
spring(12)
存储(12)
安全(12)
mybatis(8)
mvc(7)
缓存(7)
api(6)
servlet(5)
jvm(5)
xml(4)
容器(4)
tcp/ip(4)
打包(3)
maven(3)
http(3)
分布式(3)
负载均衡(2)
json(2)
云数据库 SQL Server(2)
ide(2)
jar(2)
负载均衡缓存(2)
dns(2)
jdbc(2)
二叉树(2)
udp(2)
数据处理(2)
nat(2)
DNS 解析 DNSPod(1)
c++(1)
php(1)
python(1)
javascript(1)
css(1)
html(1)
android(1)
嵌入式(1)
sqlite(1)
oracle(1)
eclipse(1)
git(1)
github(1)
搜索引擎(1)
全文检索(1)
访问管理(1)
SSL 证书(1)
人工智能(1)
网站(1)
开源(1)
shell(1)
网络安全(1)
jdk(1)
sql server(1)
面向对象编程(1)
asp(1)
aop(1)
scrapy(1)
socket编程(1)
dom(1)
table(1)
truncate(1)
搜索文章
搜索
搜索
关闭
基础构建块
容器
jdk
安全
同步容器类 同步容器类包括Vector和Hashtable, 还包括JDK1.2以后添加的一些功能相似的类,这些同步的封装器类是由Collections.synchronizedXxxd等工厂方法创建的。这些类实现线程安全的方法是:将它们的状态封装起来,并对每一个公有方法都进行同步,使得每次只有一个线程能访问容器的状态。 同步容器类的问题 同步容器类都是线程安全的,但在某些情况下可能需要额外的客户端加锁来保护复合操作。容器上常见的复合操作有:迭代、跳转以及条件运算(例如“若没有则添加”)。在同步容器中
SuperHeroes
2018-05-31
587
0
线程带来的问题
安全
缓存
1、安全性问题 安全性的含义是“永远不发生糟糕的事情”。 线程安全问题主要和同步有关。在没有做好同步的情况下,多个线程中的操作顺序是不可预测的,结果的正确性无法保证。 竞态条件(Race Condition):计算的正确性取决于多个线程的交替执行时序时,就会发生竞态条件。最典型的就是“先检测后执行”,比如延迟实例化(单例模式是最典型的延迟实例化)。 2、活跃性问题 活跃性关注的是“某件正确的事情最终会发生”。当某个操作无法继续进行下去时,就会发生活跃性问题。 在串行程序中,活跃性问题的形式之一就是无限循环。
SuperHeroes
2018-05-31
433
0
线程安全性
安全
存储
java
线程安全 要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享和可变状态的访问。 从非正式的意义来讲,对象的状态是指存储在状态变量(例如实例或静态域)中的数据,对象的状态可能包含其它依赖对象的域。 一个对象是否需要实现线程安全,取决于它是否会被多个线程访问。要使得对象是线程安全的,需要采取同步机制来协同对对象可变状态的访问。 Java同步机制:关键字synchronized、volatile类型的变量、显式锁(Lock)、原子变量。 无状态的对象一定是线程安全的。 原子性 竞态条件(Rac
SuperHeroes
2018-05-31
835
0
设计线程安全的类
安全
设计线程安全的类: 在设计线程安全类的过程中,需要包含以下三个基本要素: 找出构成对象状态的所有变量; 找出约束状态变量的不变性条件; 建立对象状态的并发访问管理策略。 要分析对象的状态,首先从对象的域开始。如果对象中所有的域都是基本类型的变量,那么这些域将构成对象的全部状态。如果对象的域中引用了其他对象,则该对象的域包含被引用对象的域。 同步策略定义了如何在不违背对象的不变性条件和后验条件的情况下对其状态的访问操作进行协同。同步策略规定了如何将不可变性、线程封闭与加锁机制等结合起来以维护线程的安全性
SuperHeroes
2018-05-31
851
0
在现有线程安全类中添加功能
安全
java
Java类库中包含许多有用的“基础模块”类。通常应该优先选择重用这些类而不是开发新类:重用能降低开发工作量、开发风险以及维护成本。很多情况这些现有的类只能提供大部分工作,我们需要在不破坏线程安全的情况下添加一些新的操作。 要添加一个新的原子操作,有以下几种方法: 第一种:修改原始的类 这种方法最简单最安全。但通常情况下无法访问或修改类的源代码。 第二种:扩展类机制(通过继承) 下面的代码中BetterVector扩展了Vector,并添加了新方法putIfAbsent。但并非所有的类都像Vector那样将状
SuperHeroes
2018-05-31
676
0
网络体系结构
tcp/ip
安全
主要有两种体系结构:OSI-RM体系结构和TCP/IP体系结构。 OSI-RM体系结构: 七层模型: 物理层:利用传输介质为通信的网络节点之间建立、维护和释放物理连接,实现比特流透明传输; 数据链路层:在通信实体之间建立链路连接,传输以帧为单位的数据包,并实现了差错控制和流量控制方法; 网络层:为以分组为单位的数据包通过子网选择恰当路由,并实现拥塞控制、网络互连等功能; 传输层:提供端到端服务,为上层屏蔽底层数据传输问题; 会话层:建立、管理、终止会话; 表示层:数据的表示、安全、压缩; 应用层:网络服务与
SuperHeroes
2018-05-30
577
0
计算题总结
编程算法
安全
作业调度算法 1、FCFS算法(先来先服务算法):算法每次从后备作业队列中选择最先进入该队列的一个或几个作业,将它们调入内存,分配必要的资源,创建进程并放入就绪队列。FCFS调度算法的特点是算法简单,但效率低;对长作业比较有利,但对短作业不利(相对SJF和高响应比);有利于CPU繁忙型作业,而不利于I/O繁忙型作业。 2、SJF算法(短作业优先算法):从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行。SJF调度算法的平均等待时间、平均周转时间最少;但对长作业非常不利。 3、HRN算法(
SuperHeroes
2018-05-30
1.5K
0
设计模式----单例模式
安全
java
单间模式: 确保一个类只有一个实例,并提供一个全局访问点。 如果需要一个类只能创建一个对象,可以使用单件模式。 经典的单件模式实现: public class Singleton{ //利用一个私有静态变量记录该类的唯一实例 private static Singleton uniqueInstance; ... //其他变量 //构造器定义为私有,只有自Singleton类内部才能调用 private Singleton(){} //利用一个静态方法
SuperHeroes
2018-05-30
547
0
Java虚拟机--类加载过程
java
存储
数据结构
安全
上一篇:Java虚拟机--类加载时机 类加载的全过程包括:加载、验证、准备、解析和初始化。 加载: 在加载阶段,虚拟机需要完成3件事情: 通过一个类的全限定名来获取定义此类的二进制字节流; 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构; 在内存中生成一个代表这个类的Class对象,作为方法区这个类的各种数据的访问入口。 验证: 验证是连接阶段的第一步,这个阶段的目的是为了确保Class文件的字节流合法,并且不会威胁到虚拟机自身的安全。验证分为四个小阶段:文件格式验证、元数据验证、字节码验证、
SuperHeroes
2018-05-22
520
0
Java虚拟机--垃圾收集算法和垃圾收集器
java
编程算法
安全
上一篇:Java虚拟机--对象回收 垃圾收集算法: 标记-清除法: 分为标记和清除两个阶段:首先标记所有需要回收的对象,在标记完成后统一回收被标记的对象。 主要不足: 效率问题:标记和清除两个过程的效率都不高; 空间问题:标记清除后会产生大量不连续的内存碎片。 复制算法: 将内存划分成大小相等的两块,每次只使用其中的一块。当这一块内存用完了,就将还存活着的对象复制到另一块上面,然后再把已使用过的那块内存一次性的清理掉。 优点:不必考虑内存碎片问题,实现简单,运行高效; 缺点:将内存缩小为了原来的一半代价太高
SuperHeroes
2018-05-22
443
0
Java--线程同步&线程通信
java
安全
上一篇--五态模型&控制线程 线程同步: 同步监视器(synchronized): Java多线程引出了临界区问题。当两个进程并发修改同一资源时就有可能造成异常。Java引入同步监视器来解决这个问题。使用同步监视器有两种方法:同步代码块和同步方法。 同步代码块: synchronized(obj){ //此处代码是同步代码块 } 上述代码的obj就是同步监视器,同一时刻只能有一个线程获得同步监视器的锁定,当同步代码块执行完毕后,该线程会自动释放该同步监视器的锁定。 通常使用可能被并发访问的共享资源
SuperHeroes
2018-05-22
1K
0
Java--多态性之抽象类和接口
java
安全
上一篇:多态性之上溯造型和下溯造型 抽象类(abstract)可以含有一个或多个抽象方法(只有方法的定义而没有方法的实现),也可以不含有抽象方法。如果想从一个抽象类继承,而且新类要实例化对象,则必须实现抽象类的所有抽象方法。否则,新类也是抽象类。 接口(interface)可以理解为纯抽象类。它完全禁止方法的实现。接口中的数据成员(字段)默认为static和final, 成员函数(方法)默认为public。所以在实现一个接口时,来自接口的方法必须也是public。 实现按一个接口要使用 implements
SuperHeroes
2018-05-22
512
0
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
立即发文
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档