转:Java同步技术 (一)
本文版权归作者Ian Gao所有,如有转载请与作者联系并注明出处http://blog.csdn.net/Iangao/archive/2008/10/09/3041265.aspx。 一、基本同步原理 1.1 同步机制(synchronize mechanism)1.1.1 同步 多线程开发过程中,我们经常会提到同步这个词,那么什么是同步呢?为什么会存在同步问题呢?我们知道一个多线程应用系统在操作系统的进程(线程)机制下可以同时有多个进程(线程)并发运行,这此进程(线程)要完成的任务可能是互不相关的,但也可能是有联系的。那么当一个进程(线程)要和另一个进程(线程)交流信息时同步就有可能发生了
转:Java同步技术
Java同步技术文/ Iangao 2008.10.9一基本同步原理1. .基本同步原理2. 信号量(Semphore)二. 高级同步技术1. 事件(Event)2. 管程(Monitor)与条件变量(Condition)3. 信号量、事件以及条件变量之间异同三. 经典同步问题1. 有限缓冲区(生产者-消费者)问题2. 经典同步问题 - 读写问题(Reader-Writer)四. 常用线程解决方案1.定时器2 对已有方法的同步或异步调用 - BlockingCall 附录:1.一个简单的多线程测试类[@more@]参考资料:《操作系统(第3版)》, (美)Gary Nutt, 译: 罗宇、吕顾等. 机械工业出版社 《Java编程思想(第3版)》,(美)Brucel Eckel
Google操作系统基于Chrome?!
Google操作系统基于Chrome?!Google OS的传闻早已不是一年两年那么长,而在当地时间周二晚上,Google官方博客撰文表示,一个基于Chrome浏览器的操作系统正在出现.[@more@]换而言之,谷歌的云计算野心终于露出,他们认为未来的小型上网本甚至全尺寸桌面系统上的所有工作都可以在Web上完成.如果Google的预想实现,将割裂传统上的计算软硬件需求,对业界产生广泛影响.Google产品管理副总裁Sundar Pichai表示他们正在为各种功率的计算机设计桌面系统.目前Google有Docs、GMail等多项Web应用,其中一部分已经实现桌面引擎化.另一个可能的办法是Google会单
转:Java String中的HashCode和Equal
Java String中的HashCode和Equal 文/Iangao 2008.11.21 16:53 1. hashSet中比较是否重复的依据是a.hasCode()=b.hasCode() && a.equals(b)2. String的hashCode依据: 以依赖于char[i]的int值以和char[i]的排列序的算法计算出的.不依赖String的ref.3. String的equals依据: a==b || ( a.length=b.length && { a[i]=b[i] } )4. 只有用a==b时比校的才是比校的ref,也就是说这时才是比校是a与b是不是同一个对象[@more@]5. 结论: 两个不同ref(引用)的String可能会被认为是集合中的同一个元素.本文来自CSDN博客,转载请标明出处:
转:Java中的HashSet, TreeSet, HashMap, TreeMap
Java中的HashSet和TreeSet 文/ Iangao 一. 问题 1. HashSet,TreeSet是如何使用hashCode()和equal()方法的 2. TreeMap,TreeSet中的对象何时以及为何要实现Comparable接口? 二. 回答:1. HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的,只不过Set用的只是Map的key2. Map的key和Set都有一个共同的特性就是集合的唯一性.TreeMap更是多了一个有序性.3. hashCode和equal()是HashMap用的, 因为无需排序所以只需要关注定位和唯一性即可. a. hashCode是用来计算hash值的,hash值是用来确定hash表索引的. b. hash表中的一个索引处存放
原:八皇后问题的递归和非递归Java实现
原:八皇后问题的递归和非递归实现八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名 的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后 来有人用图论的方法解出92种结果。事实上就是有92种解法。以下是code:[@more@]import java.io.*;import java.util.*;class Queens {final boolean available = true;final int squar
转:JDK1.4非阻塞套接字API概述
J2SE 1.4版引入了非阻隔套接字(Nonblocking sockets),它允许在网络通信应用程序和没有阻隔的进程中使用套接字。本文将详细介绍什么是非阻隔套接字(Nonblocking sockets)及其工作原理和用途。 从Java 1.4起,程序员便能用一组新的API来进行I/O操作。这是JSR 51项目的结果,自2000年1月的Java 1.4 beta版,程序员便可以使用JSR 51了。在Java 1.4中增加了一些非常重要的新技术来处理诸如在文件和套接字上进行高性能的读/写操作,正规表达式,译码/编码字符集,内存映射和文件锁定。在这篇文章中,我们将讨论一个特殊的新API――New I/
转:目前国内的广告联盟不计其数,但大多是鱼目混珠,下面介绍几个国内最好的也是最值得站长信任的十五个广告联盟:
目前国内的广告联盟不计其数,但大多是鱼目混珠,下面介绍几个国内最好的也是最值得站长信任的十五个广告联盟:[@more@]1.百度广告联盟2. GoogleAdsense3.亚洲交友联盟4.第一视频5.阿里妈妈6.黑马广告联盟7.亿起发8.泡泡玩网页游戏联合运营平台9.成果网10.搜狗广告联盟11.当当联盟12.卓越联盟13.迅雷联盟14.QQ联盟15.世纪联盟http://alexclark.itpub.net/post/670/484410
转:java应用 tomcat中实现https安全连接的方法
SSL, 或者Secure Socket Layer,是一种允许web浏览器和web服务器通过一个安全的连接进行交流的技术。这意味着将被发送的数据在一端被翻译成密码,传送出去,然后在另一端解开密码,再进行处理。这是一个双向的过程,也就是浏览器和服务器都需要在发送数据之前对它们进行加密。 [@more@]SSL协定的另一个重要方面是认证(Authentication)。这就是说,在你开始试图通过一个安全连接与一个web服务器交流的时候,这个服务器会要求你的浏览器出示一组证件,通过“鉴定”的方式来证明这就是你所声明的网站。 在某些情况下,服务器还会要求你的web浏
转载自月光博客 [ http://www.williamlong.info/ ] - 中文分词和TF-IDF
中文分词(Chinese Word Segmentation)指的是将一个汉字序列切分成一个一个单独的词。中文分词是文本挖掘的基础,对于输入的一段中文,成功的进行中文分词,可以达到电脑自动识别语句含义的效果。 TF-IDF(term frequency–inverse document frequency)是一种用于信息搜索和信息挖掘的常用加权技术。在搜索、文献分类和其他相关领域有广泛的应用。 TF-IDF的主要思想是,如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。TF词频(Term Frequency)指的
转:“神医”李培刚没治好李宁 日前接受微创手术
李培刚(左)在《面对面》节目中的“表演”。 资料片[@more@]本报讯 据《南方都市报》报道,李培刚的“神医”成名之路中,一个重要的支撑就是《面对面》节目中“体操王子”李宁接受他的治疗。实际上,他的“李培刚医学新疗法”并没有治好李宁,李宁日前在医院接受了最先进的微创手术,将于本周三出院。 在6月13日的《面对面》节目中,李培刚当场“表演”了为中国“体操王子”李宁看病。李宁称自己站久了腰部就有麻、痛等症状,李培刚现场诊断后告诉李宁:“这是软组织交织紊乱,是由于胯上的一块肥厚软组织发炎、导致肌肉不收缩,加上过度疲劳导
转:MSN名医讲堂:有没有能用按摩治好的瘫痪?
央视“面对面”节目中,播出了一个能用按摩治好瘫痪的“神医”,引起大家对央视权威性的质疑,也由此怀疑到中医按摩的效应。按摩的作用到底有多大?最适合解决哪些问题?能不能治愈瘫痪?哪种瘫痪确实可以重新站起来的?中国中医科学院骨伤研究所赵勇教授将作客直播室。名医讲堂更多精彩视频[@more@]http://msn.vodone.com/msn/live/live_456.shtml
怎样预防猪流感
随 著有關豬流感的擔憂席捲全球﹐保護自己、避免感染豬流感或其他傳染病的最好方式就是具備一些常識﹕常洗手﹐咳嗽和打噴嚏時應掩住口鼻﹐如果覺得不舒服就在家休息﹐不要上班或去學校。着有关猪流感的担忧席卷全球﹐保护自己、避免感染猪流感或其他传染病的最好方式就是具备一些常识﹕常洗手﹐咳嗽和打喷嚏时应掩住口鼻﹐如果觉得不舒服就在家休息﹐不要上班或去学校。 [@more@]美國疾病控制預防中心代理主任貝瑟(Richard Besser)週一在亞特蘭大的一個新聞發佈會上說﹐上述指導原則可能看上去都是最基本的﹐但它們在防止疾病蔓延方面很有
Java 同步机制浅谈
Java对多线程的支持与同步机制深受大家的喜爱,似乎看起来使用了synchronized关键字就可以轻松地解决多线程共享数据同步问题。到底如何?――还得对synchronized关键字的作用进行深入了解才可定论。总的说来,synchronized关键字可以作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。如果再细的分类,synchronized可作用于instance变量、object reference(对象引用)、static函数和class literals(类名称字面常量)身上。A.无论synchronized关键字加在方法上还是对象上,它取得的锁都是对象,而不是把 一段代
Socket编程中的同步、异步、阻塞和非阻塞(转)
http://hi.baidu.com/evenque/blog/item/1ccfc63ffc3527c17d1e7188.html在进行网络编程时,我们常常见到同步、异步、阻塞和非阻塞四种调用方式。这些方式彼此概念并不好理解。下面是我对这些术语的理解。同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin, isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是SendMessage(JAMBOL注:PostMessage是异步机制)。该函数发送一个消
杀软使用心得
杀软无数手中过,金山瑞星不杀马,江民防火没防住,卡巴斯基卡死机,唯有诺顿安吾心。[@more@]以上纯属个人杀软使用心得,请表拍我。
转:360安全中心:大众版网银最不安全
360安全中心:大众版网银最不安全来源:360安全中心 发布日期:2009-03-20 共134条回复三成用户决定减少使用网银 八成潜在用户打算推迟尝试 央视3.15晚会曝光黑客盗取网银账户钱财,由此引发了一系列连锁反应。3月19日,艾瑞发布调查结果称,近三成网银用户决定减少使用网银,而近八成潜在用户打算推迟尝试网银;同一天,国内19家商业银行联合启动“2009放心安全用网银联合宣传年”活动。那么网银到底是否安全?是相信银行,继续使用网银,还是小心为妙不再使用?3月20日,国内最大的网络安全公司奇虎360总裁齐向东表示:“目前网银的确
转:google搜索联盟与adsense搜索广告的区别
重新整理一下,对比google搜索联盟与adsense搜索广告的不同之处:第一:adsense搜索广告,没有提供搜索框下面的google推荐搜索的项目。但是一旦选择有相关推荐的搜索项目就不能再添加搜索本站的功能了。第二:搜索结果界面不一样,google搜索联盟搜索出来的界面和google.cn没有差别。而google adsense搜索广告则可以自定义各种颜色参数,还可以在顶部设置自己的logo,并且,最关键的一点,google搜索广告,提供有效点击广告的可能性要比google搜索联盟的几率要大很多.但是google搜索联盟的广告单价和分层都要比adsense搜索广告高一些,具体
转:冬吃萝卜夏吃姜 看姜的43种“药疗”功效
生姜具有特殊的辣味和香味,可调味添香,是生活中不可缺少的调配菜,除用作调料外,还可以用于药疗。生姜祛病保健的方法由来已久。民间也有“冬吃萝卜夏吃姜,不劳医生开药方”,“家备小姜,小病不慌”等说法。下面就来看看生姜的“药疗”攻效吧。 1、发汗解表、温肺止咳:生姜10片,茶叶7克,煎水趁热饮服。 2、偏头痛:当偏头痛发作时,可用热姜水浸泡双手,大约浸泡 15分钟左右,痛感就会减轻,甚至消失。 3、口腔溃疡:用热姜水代茶漱口,每日 2至3次,一般6至9次溃疡面即可收敛。 4、牙周炎:先用热姜水清洗牙齿,然后用热姜水代茶饮
转:不要错过 冬吃萝卜夏吃姜
不要错过 冬吃萝卜夏吃姜 【 来源:中华美食 | 时间:2009-2-5 | 浏览: 317 次 | 加入收藏 | 打印本页 】 【字体:大 中 小】 【颜色:红 绿 蓝 黑】 俗话说“冬吃萝卜夏吃姜”,“萝卜上市,郎中下岗。”大白萝卜是很多家庭冬季餐桌上不可缺少的菜肴,除了煲汤、炒菜,白萝卜还有很多新吃法和对症治疗的效用。 煮萝卜胜过胃肠药 萝卜中的维生素C可以帮助消除体内的废物,促进身体的新陈代谢。尤其是白萝卜或者水萝卜,其富含的酶可以起到促进消化的作用。 通常,酶能够吸收食物中的淀粉,更能化解胃中的积食,起到很好的消