11 2011 档案
摘要:synchronized原语和ReentrantLock在一般情况下没有什么区别,但是在非常复杂的同步应用中,请考虑使用ReentrantLock,特别是遇到下面2种需求的时候。1.某个线程在等待一个锁的控制权的这段时间需要中断2.需要分开处理一些wait-notify,ReentrantLock里面的Condition应用,能够控制notify哪个线程3.具有公平锁功能,每个到来的线程都将排队等候下面细细道来……先说第一种情况,ReentrantLock的lock机制有2种,忽略中断锁和响应中断锁,这给我们带来了很大的灵活性。比如:如果A、B2个线程去竞争锁,A线程得到了锁,B线程等待,但是
阅读全文
摘要:转自http://www.iteye.com/topic/333669 JDK1.5以后加入了concurrent包,主要是为了提高多线程的开发效率,其中提供了很多支持并发的集合类,其中包括:ConcurrentHashMap。大家知道HashTable也是支持并发环境的,也就是说多线程安全的,那两者有什么区别呢?分析 其实简单的说是同步机制有区别,具体区别又在那里呢? 请看HashTable的put方法:Java代码/***Mapsthespecified<code>key</code>tothespecified*<code>value</code
阅读全文
摘要:转自http://www.iteye.com/topic/109150volatile, 用更低的代价替代同步为什么 使用volatile比同步代价更低?同步的代价, 主要由其覆盖范围决定, 如果可以降低同步的覆盖范围, 则可以大幅提升程序性能.而volatile的覆盖范围仅仅变量级别的. 因此它的同步代价很低.volatile原理是什么?volatile的语义, 其实是告诉处理器, 不要将我放入工作内存, 请直接在主存操作我.(工作内存详见java内存模型)因此, 当多核或多线程在访问该变量时, 都将直接 操作 主存, 这从本质上, 做到了变量共享.volatile的有什么优势?1, 更大的
阅读全文
摘要:Ubuntu Server apt-get install Apache2 & PHP5 & MySQL5用apt-get方式安置mysql5 + Apache2 + PHP5+Phpmyadmin:大师请先看下Ubuntu的WIKI,(http://wiki.ubuntu.org)上面讲的很具体的。但本人按上面做的第一次没有乐成。apache2,php5,mysql5都可以运行,便是phpmyadmin不克不及用。本人获得的履历是:MYSQL安乐成后,必然要先给它设个暗码,这上步是不成少的。此篇只代表小我的概念和履历,大概会单方面化和有错误,请大师攻讦斧正,有题目大师一路来会
阅读全文
摘要:进入cmd命令行,输入telnet 127.0.0.1 11211(memcached默认端口为11211)stats:使用stats命令查看当前memcache服务器的状态命令行显示代码STATpid924STATuptime21057STATtime1303194576STATversion1.2.4STATpointer_size32STATcurr_items0STATtotal_items3STATbytes0STATcurr_connections1STATtotal_connections28STATconnection_structures8STATcmd_get12STATc
阅读全文
摘要:Ubuntu是最近很流行的一款Linux系统,因为Ubuntu默认是不启动root用户,现在介绍如何进入root的方法。(1)从user用户切换到root用户不管是用图形模式登录Ubuntu,还是命令行模式登录,我们会发现缺省的用户是user但是当我们需要执行一些具有root权限的操作(如修还系统文件)时,经常需要用sudo授权,感觉很麻烦此时我们可以切换到root用户,只需要简单的执行sudo su即可注意: 出于安全考虑,默认时Ubuntu的root用户时没有固定密码的,它的密码是随机产生并且动态改变的,貌似是每5分钟改变一次,所以用su(switch user)是不可以的,因为我们不知道
阅读全文
摘要:来源:http://www.100ask.net/showtopic-2399.aspx韦东山2009.12.10所有的系统调用,基于都可以在它的名字前加上“sys_”前缀,这就是它在内核中对应的函数。比如系统调用open、read、write、poll,与之对应的内核函数为:sys_open、sys_read、sys_write、sys_poll。一、内核框架:对于系统调用poll或select,它们对应的内核函数都是sys_poll。分析sys_poll,即可理解poll机制。1.sys_poll函数位于fs/select.c文件中,代码如下:asmlinkage long sys_pol
阅读全文