java并发编程——基本线程机制1
2015-06-23 16:34
447 查看
一、为什么需要并发编程
如果是单线程的编程,如果一个程序遇到阻塞的情况,比如需要等待i/o的某个事件发生,才能执行程序。这样就造成了影响了下面的程序的运行。
并发,就是在进程中,采用多个任务进行处理,每个任务由操作系统来回切换。
这样就感觉像很多任务同时执行一样。
二、基本的线程机制
1、定义任务
定义一个类,实现Runnable()接口,在Runnable()接口中定义了run()方法,我们可以把要执行的事件写在run()方法中。
而run()中任务的运行,需要将其放在Thread构造器中。
通过start方法运行thread后,就会运行在thread中的任务。
如果是单线程的编程,如果一个程序遇到阻塞的情况,比如需要等待i/o的某个事件发生,才能执行程序。这样就造成了影响了下面的程序的运行。
并发,就是在进程中,采用多个任务进行处理,每个任务由操作系统来回切换。
这样就感觉像很多任务同时执行一样。
二、基本的线程机制
1、定义任务
定义一个类,实现Runnable()接口,在Runnable()接口中定义了run()方法,我们可以把要执行的事件写在run()方法中。
而run()中任务的运行,需要将其放在Thread构造器中。
通过start方法运行thread后,就会运行在thread中的任务。
class task1 implements Runnable { public void run() { for(int x=0;x<=10;x++) { for(int y=0;y<=99999999;y++){} System.out.println(Thread.currentThread().getName()+"....x="+x); } } } class task2 implements Runnable { public void run() { for(int z=0;z<=10;z++) { for(int y=0;y<=99999999;y++){} System.out.println(Thread.currentThread().getName()+"....z="+z); } } } public class hello { public static void main(String[] args){ task1 t1= new task1(); task2 t2 = new task2(); Thread nt1 = new Thread(t1); Thread nt2 = new Thread(t2); nt1.start(); nt2.start(); } }
相关文章推荐
- Java RTTI与反射
- fastJson在java后台转换json格式数据探究(一)
- struts2移除标签button的id传统的价值观念问题
- 生成条形码,java操作word文档
- Java并发编程:volatile关键字解析
- Eclipse更新的那点事
- 字符串通配符匹配*,?算法
- Java多线程编程— 概念以及常用控制
- 24、java操作xml方法
- java的md5算法中,为什么要将每个字节都&0xff?
- Java设计模式——六大原则之开闭
- Java设计模式——六大原则之最少知道
- java上传图片
- Java泛型中的标记符含义
- Struts2 自定义拦截器
- 用AXIS2发布WebService的方法
- Spring技术内幕:Spring AOP的实现原理(一)
- Java中的作业调度——quartz
- java处理正则表达式
- Java截取字符串