简单的线程池及其实现

  |   0 评论   |   1,487 浏览

本文主要参考了这篇文章,并在这个基础上做了一些修改。 进程,线程是现代操作系统两个比较重要的概念。正是由于它们的存在,使得程序和并发执行得了实现。通常,创建一个线程的代价远远小于创建一个进程,所以多线程是编写并发程序的首要选择。然而,即使有多线程,当线程数量太大时,不断的创建线程也会影响系统的性能,这时,我们可以创建线程池来达到重用线程的目的,从而尽可能有减小开消,从而大大提高系统性能,比如在网络爬虫heritrix中就使用了线程池。 以下是一个简单线程池的实现(java程序)。 本程序由4个类构成,TestThreadPool,用来测试的类,用来模拟客户端的请求。它会创建20个任务(Task),交给线程池(ThreadPoolManager)处理。 线程池默认维护10个线程,当客户请求一个任务时,它会获取一个空闲线程,然后 处理交给该线程(SimpleThread)处理。 TestThreadPool 测试线程 package threadpool; public class TestThreadPool { public static void main(String[] args….

JAVA虚拟机类加载器加载顺序

  |   0 评论   |   1,555 浏览

JAVA虚拟机类加载器加载顺序 默认类加载顺序(父类优先) Websphere采用的是父类优先的类加载顺序。通过websphere控制台——故障诊断——类装入器查看器 我们可以看到一个应用在websphere上部署完成启动后真正形成的类加载层次: 类加载层次是: JDK扩展装入器(也就是java类加载器中的扩展加载器(Extensions))——应用程序装入器应用程序加载器(Application)——OSGI(was6.1新特性)装入、引导程序、类保护器——组合类装入器——组合类装入器 改变类加载顺序(应用程序优先) “应用程序优先”的类加载顺序的结果是: 引导加载器(Bootstrap)——原来最低级的web和module加载器——扩展加载器(Extensions)——应用程序加载器(Application)——was扩展classloader、WAS应用程序类加载器 类加载器有一个重要的属性:委托模式(Delegation Mode,有时也称为加载方式:Classloader mode)。委托模式决定了类加载器在查找一个类的时候,是先查找类加载器自身指定的类路径还是先查找父类加载….

Comet:基于 HTTP 长连接的“服务器推”技术

  |   0 评论   |   1,541 浏览

服务器基于tomcat实现 (基于 AJAX 的长轮询(long-polling)方式) 修改tomat配置文件支持comet 修改protocol= “HTTP/1.1” <Connector connectionTimeout=“20000” port=“8080” redirectPort=“8443” protocal =“org.apache.coyote.http11.Http11NioProtocol” /> 创建servlet,实现CometProcessor,不用实现doget dopost的对应service方法 实现的event方法:处理各种请求,根据状态不同得到各种响应 获取响应的request 和 response 长连接方式支持不太好, (长连接方式,状态码是3,只有firefox支持,其他浏览器不支持) //基于流的方式,只有一个连接,全部都使用同一个response来传递,不能关闭流 out.print(l); out.flush(); 长轮询方式: function poll(){ var xhr =createXMLHttpRequest….

使用markdown写blog

  |   0 评论   |   1,561 浏览

新的开始 优点 缺点 sublime text 2配置 Sublime Text 2的快捷键 其它Ubuntu 下的Markdown 工具 一个Markdown语法高亮主题 新的开始 markdown语法说明,这篇文章将的很详细,基本的语法,都已经说的很清楚了。 花半个小时来操作练习一下,就能熟悉了,但还是要多用,毕竟不用,太容易忘了。 和vi编辑器一个样,不用的话,过几天,什么命令都忘光了。只是对于wordpress的支持并不是很好 没有尽善尽美的工具,只要适合自己的工具就好。 优点 语法简单简洁,比起HTML来说,要简单多了。 格式美观,更适合阅读,哪怕是没有样式也能很好阅读 兼容HTML 特殊字符自动转换, 这对于经常有代码快的人来说, 是很方便的 缺点 列表显示是硬伤 图片不能设置大小 编辑器没有一个好用,mac下的mou没有用过不清楚,windows下的是真不方便 有些在线编辑器能和笔记功能绑定,这一点非常的好,但需要付费,客户端工具没有。 没办法,我习惯文本编辑器是sublime text 2,记录笔记用印象笔记,印象笔记不支持直接使用markdonwn格式的语法,只能写好….

学习编程用什么做笔记比较好?

  |   0 评论   |   2,218 浏览

  问:学习编程用什么做笔记比较好? 学习的时候做笔记,Word排版很好,但是处理代码就不是太方便。请问有没有推荐的工具? pezy,互联网的搬运工 【常规笔记攻略】 1、笔记格式化最好的选择无疑是 Markdown 语法。(越来越成为通用格式,对代码有极好的支持) 对于它的简介与使用方法可以参考这个回答:怎样引导新手使用 Markdown? 另参见:Markdown 2、最好的电子笔记公认是Evernote,国内版本叫做印象笔记。 对于它的介绍可以参考这个回答:印象笔记(Evernote)有哪些常见的用途? 其主页:印象笔记 | 记录点点滴滴 3、连接这两者的工具,可以选择马克飞象。 地址如下:http://maxiang.info/ 利用 Evernote 做好笔记的技巧和习惯,网上有很多前辈分享他们的使用心得。也可以搜来看看。 请见:印象笔记之使用窍门 最后愿你能把笔记做好,更高效的学习。 更新: 最近发现一个工具几乎可以兼备以上的全部特性: Cmd Markdown 编辑阅读器 你不需要过分纠缠 Markdown 语法的细节(因为它还提供了类似 Word 一样的工具栏….

kindle114下载中心电子书资源下载

  |   0 评论   |   2,649 浏览

  上午刚刚弄好的, 结果下午就发现了, 好多资源没有办法下载,都需要k币的,测试了一下, 能免费下载的资源已经很少了。 kindle114上资源还是挺不错的, 有很多电子书很适合kindle上阅读,电子书的资源很多, 根本看不过来, 最近朋友做微信推送电子书的功能。需要大量的电子书,正好,网上有源码用来下载这个站点,只是用的是python写的东西,好久没有了,python这东西,早就不知道丢哪去了。调试环境都没有, 直接用java弄一个好了。以下就是我做这个小工具的过程。 首先肯定是先看看网页的源文件,发现查找资源不需要登录, 但下载资源需要登录。没有登陆会跳转到错误页面。 本来一个很简单的东西,中间遇到的一个问题,一直怀疑是程序的问题,后来发现,还是不够仔细的问题。用多线程下载的时候, 始终下载的资源都是一样的,其实只是解析页面的时候,左边栏目中有一个热门下载没有排除掉。。看下面的这个图,每个页面都有,造成了干扰, 使用css过滤一下就行了。 还有一个很严重的错误, 就是没有使用jsoup获取页面源码的时候, 没有设置模拟浏览器终端的问题,导致了,总是访问页面,访问到手机….

springMVC 4.1.1使用注解@ResponseBody返回json的时候出错

  |   0 评论   |   1,396 浏览

错误提示: 大概有三行这样的错误,都是提示相同的内容信息 org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation 网上给出的信息都是添加jackson需要的两个jar包, 添加上去了还是同样的错误 org.codehaus.jackson jackson-core-asl 1.9.13 org.codehaus.jackson jackson-mapper-asl 1.9.13 可能之前的版本spring版本只需要添加这两个,到了spring 4的版本好像不行了。 必须要添加下面的版本了   com.fasterxml.jackson.core jackson-databind 2.4.3

jQuery插件滚动加载更多jqueryscrollpagination

  |   0 评论   |   1,472 浏览

插件下载github路径:https://github.com/andferminiano/jquery-scroll-pagination   今天使用这个插件,主要是用来滚动加载更多产品列表信息。但是发现有个地方,就是后台传值的功能。如果默认按照样例里面的方法传值的话,ajax调用的参数,url,data参数是初始化设置的, 对于获取翻页参数动态传值不方便。如下图:   所以进行了修改,添加了一个传参数的方法,方便调用 ,动态传参数进去,如下图 添加代码: var parm = opts.contentData; if (opts.parm != null){ parm = opts.parm(); } 对应ajax方法中,data参数修改成 data:parm, 这样就行了。前面调用的方法和demo中的调用方法一样。 以下是我调用的代码,加粗的地方属于自己新增的代码 $(‘.pro_list’).scrollPagination({ ‘contentPage’: “/prodetailsmore”, ‘contentData’:$(“#proform”).se….

was服务器提示打开文件过多问题

  |   0 评论   |   1,573 浏览

Linux下运行tomcat出现java.net.SocketException: 打开的文件过多错误 tomcat报“too many open files”的错误,解决办法如下: 报此错误是由于系统内核对进程打开文件个数的限制,默认为1024 [root@localhost ~]# ulimit -n 1024 修改参数,增大这个限制: #vi /etc/security/limits.conf 增加下面这一行内容: * - nofile 65535 将限制增加到65535 注意"nofile"项有两个可能的限制措施。就是项下的hard和soft。 要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。 硬限制表明soft限制中所能设定的最大值。 soft限制指的是当前系统生效的设置值。 hard限制值可以被普通用户降低。但是不能增加。 soft限制不能设置的比hard限制更高。 只有root用户才能够增加hard限制值。 重启机器使修改配置生效 [root@localhost ~]# ulimit -n 655….

程序员怎么学好英语

  |   0 评论   |   1,454 浏览

一直以来, 都知道学好英语很重要, 尤其是在计算机方面的,英语好的话, 成功基本上是多了一半。好的文档,好的书籍,技术,计划无一例外的是来自国外, 大部分都是英文文档,等到中文翻译版本, 有些翻译还特别的难以理解。这就发现, 学习新技术等,英文有多么的重要。关键在于坚持,热情大家都有,周末样坚持下来,才是最重要了,我无数次开始,无数次放弃。现在已经记不清楚了。 以下是来自《人生元编程》中的一个方法,希望对大家有用, 我看到觉得挺有道理了。不管什么行业,需要学习英语的话,都试试吧, 万一坚持下来,又或者万一成功了。      一个相对容易坚持的办法就是,找一本和当前工作相关的、急需的技术图书,每天拿出一小时阅读,不认识的单词,如果不影响阅读可以不查词典。如果某个单词多次出现,那么就该查下词典并计入生词本。如果你能坚持查阅英英词典,那么提高就会更快了。每天坚持一小时,这本书读完,你就会发现自己的阅读能力提高了一大截。这样看来提高阅读能力似乎很简单,但是,问题的关键是,你能否坚持下来,尤其是阅读初期,你只能看懂20%,需要不停的查字典,单词记了又忘,几个星期过去….

试着放下所有你害怕失去的东西

  |   0 评论   |   1,455 浏览

As we grow up, we realize it becomes less important to have a ton of friends, and more important to have real ones. 当我们慢慢长大,会明白结交一群朋友,远不如交几个真心朋友。   every person need a friend to make them laugh when they think they will never smile again. 每一个人都需要这样一个朋友:当以为自己再也笑不出来的时候,他能让你开怀大笑!   Train yourself to let go of everything you fear to lose. 试着放下所有你害怕失去的东西。   Actually it is just in an idea when feel oneself can achieve and cannot achieve. 觉得自己做得到和做不到,往往只在一念之间。    

生活需要惊喜,创想永无止境

  |   0 评论   |   1,515 浏览

生活需要惊喜,新奇创意的小物往往给我们带来意想不到的喜悦感。试想,在家里放置下面这些既实用又有趣的创意用品,那么家居生活又将会变成一件多么美妙的事啊! 流逝的时光   U盘之英雄情节   木质手机壳   不出水的水龙头:夜光小灯   U盘电源插板二合一   透明胶带分段之小白人   这个好萌,用途欢迎猜想   天冷吗?来给手机整件衣服   会发光的数据线   点击手势的鼠标   犹抱琵琶半遮面的手表?   家庭主妇之最爱:好收拾菜刀   带这个手表穿越到石器时代吧   安卓用户专用充电器   重口味点心罐:这么个造型,你让我吃还是不吃呢?  

[转载]爆料朋友圈微商如何自导自演!

  |   0 评论   |   1,514 浏览

转载自:南宁时空网,涉及版权问题,请联系删除! 实在被朋友圈那些烦死了,真的被烦到我要开大招了,所以大晚上来开贴!! 估计这篇发出以后,微商要骂我了:我跟你什么仇啊什么怨什么仇啊什么怨!!! 今天来开个帖子,给大家笑一笑,我好久没来扒皮了。 所谓月收入上万,一年一辆法拉利的笑话。 金字塔模式是如何自导自演这场闹剧的。 首先是软件篇: 看楼上转账神器,自言自语神器,微商就是演技派啊!!! 我一直天真的以为微商有N只手机的啊!!! 这种小神器轻松就帮你搞定啊~~~ 我曾经以为微商是这样的啊,N只苹果一个机房啊,感觉很高大上有木有!!! 现在我想想实在太天真太年轻了~~~~ 另外还有一种也很屌是 代里全世界各类化妆品啊~~~~ 真的很牛逼啊!!! 真的是全世界的啊!!! 泰国 欧洲 美国 澳洲 日韩啊~~ 外贸公司都没这么牛逼,她就是这么牛逼啊~~ 楼主做了法国药妆四五年了,都还只停留法国的渠道,她就是这么屌! 还各种发票和GPS定位,感觉非常靠谱,怎么做到的??? 对,也是一款小神器~ GPS虚拟定位,想飞美国就飞美工,想飞韩国就去韩国的即视感!!! 小票就不用说了,买给热敏打印机,轻松搞….

这13个信号意味着你应该马上辞职!

  |   0 评论   |   1,917 浏览

1.不再能学到新的东西。 2.激情褪去。 Sherry Lansing告诉《华尔街日报》,她享受大部分担任Paramount Pictures公司CEO的时光,然而随着时间的推移,这一职位开始变得枯燥和机械。最终,她决定离开公司去成立一个基金会。 她说,“尝试过了,也知道该如何做,你会感到很舒服。但是日复一日地重复,你会开始失去激情的。” 3. 你的才华没有施展空间。 如果你意识到自己对于这份工作来说是“杀鸡用了牛刀”,也许你应该在公司里寻找可以提高自己能力的地方。如果公司没有给你这个上升通道,你也许应该试试别的地方。 4. 厌恶你的工作。 5. 无法融入公司文化。 成为公司的员工,意味着是公司团队和文化的一部分。如果六个月以后,你仍然觉得自己像个局外人,也许你应该寻找一个更适合你性格和价值观的工作环境。 6. 老板太坑爹。 7. 公司在走下坡路。 如果公司正经历财务问题,或者即将被收购,而你的部门面临裁员。 8. 压力和焦虑影响了你的健康。 9. 工作影响到了你的家庭和朋友。 长时间的工作确实可以让你收获更多的报酬,但是如果因此让你疏远了亲人和朋友,也许你应该考虑其中的代价。 10…..

生活感悟

  |   0 评论   |   1,459 浏览

Life may always have regret, but the future is still good.生活或许总有遗憾,但未来依旧美好。   Appreciate what you have. Because what you have now is one of the many things you once prayed for. ——好好珍惜你现在所拥有的一切吧。因为你现在拥有的,正是以前梦寐以求的   Give up, should not regret. Lost, he shouldn’t recall. Put down the down you, didn’t end the play out. 放弃了,就不该后悔。失去了,就不该回忆。放下该放下的你,退出没结局的剧。 Finally I’ve become a grown up.Live in courage and face the life with smile. 终于,还是长大了。勇敢生活,微笑面对

自动备份数据到百度云上

  |   0 评论   |   1,544 浏览

bpcsuploader 百度pcs上传脚本 系统要求 Linux (or cygwin) with php & curl installed. (这个一定要记得看看curl有没有安装 ,php也必须要安装,最开始我就是没有安装上curl工具) 使用方法 chmod +x bpcsuploader.php ./bpcs_uploader.php 由于VPS上安装的php可能存在于各种地方,因此运行很可能不正常。请以使用which php得到你的php绝对路径,修改bpcsuploader.php的头一句#!后的路径。 如果你的php是为了网站环境安装的,那么很有可能你会得到下面这条错误消息: xxx() has been disabled for security reasons 那么说明你的环境由于安全原因禁止了部分函数的执行。请看FAQs的1。请使用那条长长的命令代替./bpcsuploader.php。eg:php -d disablefunctions -d safemode=Off -f bpcsuploader.php quota 快速初始化(这一步如果成功了, 下….

体内湿气不除,睡再久也睡不够!

  |   0 评论   |   1,392 浏览

有两夫妻之前对中医养生一点都不懂,生活习惯都是由着自己喜爱。其中一点就是夏天离不开空调,爱喝冷饮,爱吃凉菜,冰镇啤酒和各种冷藏西瓜、饮料放满了冰箱。冬天爱吃火锅,最爱涮肉,中医说肉吃多了也能导致痰湿。我和老公都是体型微胖的,夏天该出汗的时候因为用空调导致汗液挥发不出来淤积体内;冬天烧暧气,穿件单衣还冒汗,阳气外越,藏不住精气。每天早晨起床的时候觉得特别疲劳,头发昏,打不起精神来,小腿肚子是不是发酸、发沉,感觉全身很浮肿。贪睡、心中空虚 …… 怎么判断自己身体是否有湿? 1、头发爱出油 2、面部油亮 3、睡觉留口水(湿气饱和自行流出) 4、排便粘稠(不易冲掉)且多便。 5、小肚子大 6. 耳内湿(耳禅湿 ) 7、阴部潮湿 8、小腿肿胀。 对!几乎全中。去拔罐,吓死人了,那师傅说是体内湿气太重了。两个多月后,再去拔罐,完全正常了,一点湿气也没有了。体重也减掉了足足 8 斤,但是真怀疑减掉的不是肉,而是体内水汽湿气。加一个神奇的微信号:wljx69,每天都会非常精彩! 食疗怎么去除湿气? 1、红豆、薏米、燕麦、荞麦和赤小豆洗净后,放入锅中用清水浸泡 4 小时以上。 2、泡好后就幵火煮,先大火….

Raspberry Pi(树莓派)安装使用hadoop

  |   0 评论   |   1,520 浏览

更新系统 #更新操作系统 sudo apt-get dist -upgrade #更新源列表 sudo add-apt update 安装SUN-JDK $ sudo apt-get install openjdk-7-jdk mysql 安装SSH #安装SSH hadoop@hadoop-master :$sudo apt-get install ssh hadoop@hadoop-master :$sudo apt-get install rsync 设置环境变量 #设置calsspath export JAVAHOME=(你的JDK安装位置,一般为/usr/lib/jvm/java-6-sun) export HADOOPHOME=/home/hadoop/hadoop-1.0.4 export PATH=$PATH:$HADOOPHOME/bin:$JAVAHOME/bin #屏蔽hadoop 的一个警告 安全模式关闭 export HADOOPHOMEWA….

SVN版本库中current文件损坏

  |   0 评论   |   1,776 浏览

遇到的问题 current这个文件损坏了 找到备份文件查看是对应的版本号码 在这个目录下面找到最新的对应版本号码,写入current文件内     commit -m "" F:/myeclipseblue/ssm12/123456.txt     RA layer request failed svn: Commit failed (details follow): svn: Server sent unexpected return value (500 Internal Server Error) in response to POST request for ‘/svn/projects/!svn/me’ svn版本库目录下的db文件夹txn-current文件损坏了 ,找到备份文件里面,发现内容就是一个gmk