Wesley13 Wesley13
3年前
java多种文件复制方式以及效率比较
1.背景java复制文件的方式其实有很多种,可以分为传统的字节流读写复制FileInputStream,FileOutputStream,BufferedInputStream,BufferedOutputStream传统的字符流读写复制FileReader,FileWriter,BufferWriter,Buffered
Wesley13 Wesley13
3年前
java并发相关(四)——关于synchronized的可重入性,线程切换实现原理与是否公平锁
一、可重入性  关于synchronized的可重入性的证明,我们可以通过A类内写两个同步方法syncA(),syncB()。然后syncA内调用syncB,调用syncA发现代码可正常执行,来证明这一点。  当处于无锁阶段时,划掉,都重入了不可能处于无锁。  当处于偏向锁阶段时,由之前对偏向锁的解释可知,偏向当前线程id是,当前线程可直
Wesley13 Wesley13
3年前
java StringBuffer读写文件
javaStringBuffer读写文件StringBuffer的优势1.较String:String每更新一次就会new一个新的对象出来,更新次数上去之后,内存开销太大。而StringBuffer类型在更新(.append等操作)的过程中始终只有一个对象,开销大大减小。2.
Stella981 Stella981
3年前
Linux中的各种锁及其基本原理
Linux中的各种锁及其基本原理1.概述通过本文将了解到如下内容:Linux系统的并行性特征互斥和同步机制Linux中常用锁的基本特性互斥锁和条件变量2.Linux的并行性特征Linux作为典型的多
Wesley13 Wesley13
3年前
Oracle锁的学习
数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。在数据库中有两种基本的锁类型:排它锁(ExclusiveLocks,即X锁)和共享锁(ShareLocks,即
Wesley13 Wesley13
3年前
Java 的锁
对象锁:new一个对象,都会给这个实例创建一把锁,对象中的方法必须在实例创建后,通过调用方法获取锁,一个线程进去这个方法之前拿到对象的锁,才能调用方法,否则被阻塞,举个例子,老王有个如花似玉的女儿,小张很爱慕,但是小张必须见到老王(AanewA();),通过老王的肯定才能和对方的女儿交往(a.lock());如果见不到老王,就别想
Wesley13 Wesley13
3年前
Java 并发底层知识,锁获取超时机制知多少?
当我们在使用Java进行网络编程时经常会遇到很多超时的概念,比如一个浏览器请求过程就可能会产生很多超时的地方,当我们在浏览器发起一个请求后,网络socket读写可能会超时,web服务器响应可能会超时,数据库查询可能会超时。而对于Java并发来说,与超时相关的内容主要是线程等待超时和获取锁超时,比如调用Object.wait(long)就会使线程进入等待状并在
Wesley13 Wesley13
3年前
VC++读写文件
目录第1章读写文件1(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.cnblogs.com%2Fhanford%2Fp%2F6028068.html%23_Toc426916801)1.1API    1(https://www.oschina.net/actio
Wesley13 Wesley13
3年前
mysql 锁的机制
锁的认识1.1锁的解释计算机协调多个进程或线程并发访问某一资源的机制1.2锁的重要性(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Flearnku.com%2Farticles%2F39212%231cf994)在数据
Wesley13 Wesley13
3年前
Java并发编程总结(一)Syncronized解析
Syncronized解析作用:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。用法:(1)修饰普通方法(锁是当前实例对象)(2)修饰静态方法(锁是当前对象的Class对象)(3)修饰代码块(锁是Synchonized括号里配置的