![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaSE
凉皮小可爱
这个作者很懒,什么都没留下…
展开
-
Java线程总结(2):线程同步
导致数据不同步的原因:破坏了数据的原子性,已读到的数据,被其他线程修改。 同步格言(摘录于Java核心技术:卷1):如果一个变量写入值,而这个变量接下类可能会被另一个线程读取,或者从另一个变量读值,而这个变量之前被另一个线程写入,必须用同步。 没有实现同步 两次运行的结果不一样:例如第二个结果:1000两个人都取了两次都取钱成功。显然不符合实际情况。 实现同步:总体思想就是加锁原创 2014-03-27 21:33:24 · 686 阅读 · 0 评论 -
Java网络编程:基础知识
1:所谓的Socket 所谓的Socket:本质上就是位于传输层的一个插口:socket的英文就有插座:插口的意思,所以在进行Java网络编程的时候:就像你拿这一个插头去找插座(ip地址),插座上就有许多插口,你插上你需要的插口(端口)。Socket本质上就是一个位于传输层的一个插口,即所谓的套接字。 eg:你可以利用ServerSocket建立TCP服务器,服务器监原创 2014-03-31 09:59:34 · 835 阅读 · 2 评论 -
Java线程总结(1)
1:线程VS进程 进程:处于运行中的程序,是系统资源进行资源分配和调度的独立单位:是系统级别的调用。 (PS:进程和程序的区别:程序是一个静态的指令集合,而进程是一个正在系统活动中的指令集合) 线程:程序运行的不同执行流:是应用程序级的调用。 本质区别:每个进程拥有自己的一套变量,而线程则是共享数据。 2:创建线程 (1):通过继承Thread类来创建线程 (2)通过原创 2014-03-27 21:00:34 · 673 阅读 · 0 评论 -
Java线程总结(3):线程通信
1:传统方法 利用同步代码块+wait()+notifyAll()+notify() 2利用Condition实现: eg:代码示例 class { private final Lock lock = new ReentranLock(); private final Condition cond = lock.newCondition();原创 2014-03-27 22:05:53 · 923 阅读 · 0 评论