读写锁接口:ReadWriteLock,它的具体实现类为:ReentrantReadWriteLock 使用场景: 对于一个资源,读读能共存,读写不能共存,写写不能共存。 锁降级:从写锁变成读锁; 锁升级:从读锁变成写锁。 ReentrantReadWriteLock不支持锁升级,支持锁降级 会死锁 ...
分类:
编程语言 时间:
2018-03-14 20:45:45
阅读次数:
213
bit是位的意思,1字节等于8位,二进制数计算机内部的数据都用二进制表示,而每一“位”二进制数字就是1bit,是最小单位,比如二进制的1就是1bit,二进制的1010就是4bit,而每一字节(byte)就由8bit组成。8bit并不等于某一个二进制数,他只是决定了位宽,也就是8位二进制位宽 ...
分类:
其他好文 时间:
2018-03-09 16:43:46
阅读次数:
125
其实ceph存储是底层的规范,应该在部署kubernetes集群前就准备好的,使他为k8s集群提供存储服务。可以用来存储pod,docker镜像,日志数据等 ceph概述 Ceph 是一个分布式存储系统,独一无二地用统一的系统—Ceph 存储集群,提供了对象存储,块存储和文件存储三种功能。Ceph ...
分类:
其他好文 时间:
2018-03-04 10:33:52
阅读次数:
542
Java内存模型与多线程: 线程不安全与线程安全: 线程安全问题阐述: 多条语句操作多个线程共享的资源时,一个线程只执行了部分语句,还没执行完,另一个线程又进来操作共享数据(执行语句),导致共享数据最终结果出现误差;所以就是看一个线程能否每次在没有其他线程进入的情况下操作完包含共享资源的语句块,如果 ...
分类:
编程语言 时间:
2018-02-22 17:33:09
阅读次数:
221
1.问题描述 将 改为 程序出错,服务器端不能转换字符 2.解决办法 实现了缓冲区自动刷新。 自动添加了"\r\n"。 所以可以修改代码为: ...
分类:
其他好文 时间:
2018-02-18 15:21:38
阅读次数:
178
File类:即能代表一个特定文件的名称,又能代表一个目录下的一组文件的名称。File类也可以用来创建新的目录。File file = new File( "D:/test.txt"); file.exists(); File file2 = new File( "D:/mkdi
分类:
编程语言 时间:
2018-02-01 18:28:19
阅读次数:
228
疯狂delphi DelphiXE公开课群:100162924、58593121 朱建强QQ:513187410 疯狂delphi DelphiXE公开课群:100162924、58593121 朱建强QQ:513187410 疯狂delphi DelphiXE公开课群:100162924、5859 ...
char* filename; 1.先判断参数个数 if(argc != 3) { printf("xxx"); } filename = argc[1]; fd = open(filename,O_RDWR); if(fd < 0) { printf("can't open!\n"); retur ...
分类:
其他好文 时间:
2018-01-22 23:03:59
阅读次数:
189
本人的第一篇随笔,简单介绍一下经典的inline hook技术。 钩取(Hooking)是一种截取信息、更改程序流向、添加新功能的技术。钩取技术多种多样,其中钩取Win32 API的技术被称为API钩取。它与消息钩取共同广泛应用于用户模式(ring3)。这里我以MessageBoxW这个简单的API ...
分类:
编程语言 时间:
2018-01-21 11:04:28
阅读次数:
215