ITPub博客

首页 > Linux操作系统 > Linux操作系统 > java多线程的学习

java多线程的学习

原创 Linux操作系统 作者:云中雁012345 时间:2013-08-11 17:48:15 0 删除 编辑

1.操作系统可以同时执行多个任务,每个任务就是进程;进程可以同时执行多个任务,每个任务就是线程。

进程是系统进行资源分配和调度的独立单位。

进程包含3个特性:独立性(每个process拥有自己的独立资源和地址空间,在没有进过进程本身的允许下,一个用户的进程不可以访问其他进程的地址空间)动态性(程序是静态的指令集合,进程是活动的程序,有自己的声明周期和各种不同的状态)并发性(在某一时刻,一个处理器只执行一条指令,但在不同进程间进行高速切换,宏观上看上去就是多个进程同时运行)

目前操作系统所采用的抢占式多任务操作系统。

线程的特点:进程之间不能共享内存,而线程之间共享内存非常容易。创建线程的代价小于创建进程的。java程序内置了多线程功能,简化了多线程的编程。

结论为:使用Thread 类方法来创建线程类时,多线程之间无法共享线程类的实例变量。

换做是实现Runnable接口就可以了,原因是,多个线程共用同一个run()方法。这种方法的优点是:多个线程可以共享同一个target对象,非常适合多个相同线程来处理同一份资源。从而将cpu,代码和数据分开,形成清晰的模型。较好的体现了面向对象的思想。

大家都知道创建线程有2中方法,但是自5以来,还出现了一种方法,那就是callable 和 future,这种方法允许call()方法带返回值,并允许声名抛出异常

推荐使用实现接口的方式来创建多线程。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28793236/viewspace-768240/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 错误处理
请登录后发表评论 登录
全部评论

注册时间:2013-04-10

  • 博文量
    17
  • 访问量
    43805