Executor框架Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执行,Executor.execute(Runnalbe) 。Executor在执行时使用内部的线程池完成操作。
一、创建线程池Executors类,提供了一系列工厂方法用于创先...
先说一个结论:时间戳是一个和时区无关的东西,在哪里都是一致的!但是转化为字符串之后,就和时区有关系了。以下为内容: 参考链接:http://m.blog.csdn.net/article/details?id=8559996原文:http://www.cnblogs.com/LiuChunfu/p/5859198.html
编程模式,是源自经验和探索总结出的最佳实践方案,既有助于可读性和可维护性,也有助于提升整体性能。 行为隔离 总则:结构、样式和行为之间两两隔离。避免在结构中使用内联事件尽量少用 <script> 标签考虑 JavaScript 被禁用的情况,添加一些替换标签 命名空间 为了减少命名冲突,优化 JavaScript 性能,尽量只定义几个全局变量,并将其他变量和方法定义为这几个变量的属性。//定义全局变量
var MYAPP = window.MYAPP || {};
//定...
基本概念进程:进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。一个应用程序至少对应着一个进程,对于一些应用程序,如浏览器或者QQ,允许启动多个同一应用程序,会对应多个进程。每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。(进程是系统资源分配和调度的最小单位)原文:https://ww...
IO NIO 区别请看 : http://blog.csdn.net/jiangtao_st/article/details/38041479一、基于Nio的 Server ,过程略复杂,但是无疑这样的效率高;代码中得注释比较详细,请看注释说明package com.zhuoxuan.net.nio;import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.nio.ByteBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import jav...
★随意地命名 有些新手写程序,当需要定义某个变量名(也可能是函数名、类名、包名等)时,随意地一敲键盘,名字就起好了......若干星期后,碰到某 bug,再来看自己写的代码时,心中暗自嘀咕:“这代码是我写的吗?咋都看不懂捏?” 所以我常跟新来的菜鸟说,命名不规范害死人啊!鉴于该问题相当普遍,我整理了几种典型的作为反面教材,具体如下:使用单字母命名变量;使用一些没太大意义的变量名(例如 s1、s2、s3);对同一...
事件处理程序事件处理程序即响应某个事件的函数事件处理程序以 “on” 开头如“onclick”,“onload” HTML事件处理程序某个元素支持的每种事件都可以使用一个与响应的事件处理程序同名的HTML特性来指定这个特性的值应该是能够执行的script代码如:<input type="button" value="click me" onclick="alert(‘clicked‘)"/>此外也可以直接调用在文档其它部分定义的函数作为事件处理程序所执行的代码如:<input type="button" value="...
最近在做项目的时候有一个需求:从网页面抓取数据,要求是首先抓取整个网页的html源码(后期更新要使用到)。刚开始一看这个简单,然后就稀里哗啦的敲起了代码(在这之前使用过Hadoop平台的分布式爬虫框架Nutch,使用起来是很方便,但是最后因为速度的原因放弃了,但生成的统计信息在后来的抓取中使用到了),很快holder.html和finance.html页面成功下载完成,然后解析完holder.html页面之后再解析finance.html,然后很沮丧的发现在...
一、安装JDK,并配置环境变量过程如下: 1.首先百度搜索“JDK下载”。 2.接着打开官网,下载好软件并开始安装。 3.安装完成之后 ,右键点击计算机属性,选择高级系统设置,点击“环境变量”。接着在弹出的界面中,点击“新建”按钮,填写变量名和变量值,最后点击“确定”保存即可。 验证,打开命令行窗口,输入 java -version,弹出以下版本信息则安装正确。 二、调试环境的搭建: 三、测试java代码1publiccl...
不得不说,本人工作上很少有使用多线程编程技术的地方。由于本人工作上经常使用的是类似SSH等框架搭建MVC架构,所以更加习惯于编写一些优秀程序员所唾弃的样板式的代码。最近看了文海的多线程编程实战指南,瞬间眼前一亮。觉得有很多自己可以学习的,事实上,我已经在最近的项目中使用上了那本书介绍的两相终止模式、串行封闭模式、生产者消费者模式以及线程池等技术,确实在许多方面改进了我们服务端的吞吐量。说到这里本人吐槽一...
1. HTML5脚本编程l 跨文档消息传递API能够让我们在不降低同源策略安全性的前提下,在来至不同的域的文档间传递消息l 原生拖放功能可以方便的指定某个元素是否可以拖动,并在放置时做出响应。还可以创建自定义的可拖放元素及放置目标l 新的媒体元素<audio>和<video>可以拥有自己的与视频和音频交互的APIl 历史状态管理让我们不必卸载当前页面即可以修改浏览器的历史状态栈。原文:http://www.cnblogs.com/SLchuck/p/4508475.html
多线程能满足程序猿编写很有效率的程序来达到充分利用CPU的目的,由于CPU的空暇时间可以保持在最低限度。有效利用多线程的关键是理解程序是并发运行而不是串行运行的。比如:程序中有两个子系统须要并发运行,这时候就须要利用多线程编程。线程的运行中须要使用计算机的内存资源和CPU。一、 进程与线程的概念这两者的概念,这里仅仅给出自己狭隘的理解:进程:进程是一个独立的活动的实体,是系统资源分配的基本单元。它能够申请...
复用代码是Java众多引人注目的功能之一。 可以通过创建新类来复用代码,而不必再从头开始编写。此方法的诀窍在于使用类而不破坏现有程序代码。有两种方法到达这一目的。 第一种非常直观:只需要在新类中产生现有类的对象。由于新类是有现有类的对象所组成,所以这种方法称为组合。该方法只是复用了现有程序代码的功能,而非它的形式。 第二种方法则细致一点,它按照现有类的类型来创建新类。无需改变现有类的形式,采用...
为了帮助对java编程感兴趣的同学更好、更快的提高编程技术,武汉北大青鸟光谷校区专业老师在此推荐几本学习编程非常有用的书籍,以供大家参考。 入门类 1.《java从入门到精通》(第3版) 【内容介绍】 本书从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Java语言进行程序开发应该掌握的各方面技术。全书共分28章,包括:初识Java,熟悉Eclipse开发工具,Java 语言基础,流程控制,字符串,...
19 【程序 19 打印菱形图案】题目:打印出如下图案(菱形) * *** ************ ***** *** *程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for 循环,第一层 控制行,第二层控制列。 package cskaoyan;public class cskaoyan19 {@org.junit.Testpublic void rhombus() {for (int i = 0; i < 4; i++) {for (int j = 0; j <= 2 - i; j++) {System.out.print(" ");}for (int k = ...