认识多任务、多进程、单线程、多线程

[seriesposts title="2"] 要认识多线程就要从操作系统的原理说起。 以前古老的DOS操作系统(V 6.22)是单任务的,还没有线程的概念,系统在每次只能做一件事情。比如你在copy东西的时候不能rename文件名。为了提高系统的利用效率,采用批处理来批量执行任务。 现在的操作系统都是多任务操作系统,每个运行的任务就是操作系统所做的一件事情,比如你在听歌的同时 More


java多线程编程全集

1.什么是多线程 简单的可以理解为多个线程同时执行多个任务,比如同时下载10个URL 的速度会比一个个下载快的多。 有兴趣深入研究原理可以学习下什么叫线程,进程 2.java多线程Thread方法小例子 extends Thread 的方式进行一次多线程实验 3.runable例子


顺序打印,经典java多线程例子

java在2007年的时候编写过多线程爬虫,当时对多线程的理解仅仅限于可以同时并发任务,对于多线程之间的调度,完全没有理解。所以后来这的多线程的应用仅仅限于只能多线程并发任务。其实一切在线程中都可以被监控。 看下面的列子,我们来理解多线程之间如何进行控制的。 package com.javaer.thread; public class PrintABC { public static Bool More


数据大规模插入效率问题

CSDN网友问: 目前有一个需求,用户需要在短时间内将几万条数据导入 MSSQL 数据库。 如果有一条无法导入,需要知道是哪条数据出的错。 导入之前最好还要根据条件验证一下数据是否存在,存在就删除。 现在我一条一条判断导入,非常缓慢。 请问有什么好的思路么? 月小升答: 你慢在搜索上。每次检查会相当消耗资源 1.如果数据有关键字段, More


Java字符串的10大热点问题盘点

下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题,如果你也是Java初学者,仔细看看吧: 1、如何比较字符串,应该用”==”还是equals()? 总的来说,”==”是用来比较字符串的引用地址,而equals()才是比较字符串的值。两个值相同的字符串用”==”比较结果有可能是false,而用equals()则一定为true。除非两个字符串是同一个new出来的对象,不然 More


eclipse failed to create the java virtual

发生这个的背景: 昨天能启动,今天启动不了。 发生的原因: 系统内存不足,被其他软件吃的差不多了。 解决方案: 如何害怕复制以下内容会改变你的配置,自己手工修改内存值。256 改成128 512改成256 方法如下: 找到eclipse目录下的eclipse.ini,可以看到如下内容: -startup plugins/org.eclipse.equinox.launcher_1.1 More


java 编程的30个建议

(1) 类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如: ThisIsAClassName thisIsMethodOrFieldName 若在定义中出现了常数初始化字符,则大写static final基本类型标识符中的所有字母。这样便可标志出它们属于编译期的常数。 Java包(Package More


java StringBuffer,StringBuilder,String自身连接效率对比

当我们仅仅需要a+b 的时候,两个字符串链接任何方法的效率基本一样,都在0.0001毫秒内就可以完成。不过如果需要1万次,10000万次,就会发现string自身的join速度显著下降 package com.java.lang; public class StringTest { int MAX = 10000; //1万次累加 public String Buffer(){ StringBuffer sb = new StringBuffer(); More


java如何计算程序执行消耗时间

很多精细的程序,需要计算一次执行所消耗的时间。 或者,我们很多时候会测试一次数据读取所消耗的时间 System.currentTimeMillis() 可以读取当前时间的毫秒数 值是当前时间减去1970年第一天0分0秒。 package com.javaer.examples; public class JavaTime { public static void main(String[] args) { long t1 = System.currentTimeMillis(); for ( More


java拆分字符串split

经常需要用java拆分字符串如1,2,3,4 tom,jim,andy,han package com.java.lang; public class StringSp { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub java.lang.String a = "my name is yuexiaosheng my blog is java-er.com"; // java.lang.String 的字符串拆分算 More


About Me

静水流深,水滴石穿