zoukankan      html  css  js  c++  java
  • Java并发和多线程那些事儿

    我记得我接触电脑的时候是在小学三年级的时候,那是1995年,那年发布了windows95,但是我学习的时候还是只是dos系统,简单对于文件的一些命令操作还有五笔

    在过去的那个年代,电脑都是单CPU,也就是单任务处理;多任务处理到后来才慢慢发展起来,多任务代表电脑在同一时刻内可以处理很多并行操作,这样CPU被利用率高了,多个任务都可以共享。多任务处理的出现对于软件开发者来说需要做更多的事,就是资源释放,也就是垃圾回收,在软件不用的时候要释放资源,这样就可以给其他软件腾出资源来使用,就像ios内存机制那样,ios5之前是需要手动操作,ios5之后可以设置为自动处理,而有某些安卓程序做的不够好的,在手机后台会一直执行,从而引起手机发热,流氓软件横行,其实就是举个栗子。

    然后的然后,多线程技术出现了,这样一个软件程序内部可以有多个线程可以并行操作,就像魔兽争霸里面那样,一个农民工采矿,一个农民工伐木,一个农民工出去打猎,这就是3个线程。

    其实多线程要比多任务处理复杂一点,有多线程了就会涉及到并发,并发也就是说对内存的读写会出现类似脏读幻读(常见的DB我内天)的错误,虽然几率不大,但是线程一多,大并发的时候,那就有可能了。相信懂并发的朋友都知道。

    其实我第一个接触的多线程语言并不是java,而是在C# winform中。相信学Java的朋友在接触swing前肯定会学习java多线程吧。

    其实很早以前就想写点跟java多线程有关的文章,加上最近也有几个朋友在学线程,接下来会不定时更新一些相关文章吧~

  • 相关阅读:
    数组指针:a pointer to an array,即指向数组的指针
    爬取人人网新鲜事python版本
    python的专用类方法
    北邮校园网管登陆python脚本
    北邮人论坛python模拟登录程序
    结对项目四则运算“软件”升级版
    了解大数据的特点、来源与数据呈现方式
    第一次作业:准备
    第二次作业:分布式版本控制系统Git的安装与使用
    第三次作业 四则运算
  • 原文地址:https://www.cnblogs.com/leechenxiang/p/6294333.html
Copyright © 2011-2022 走看看