程序.进程.线程的区别. 程序(program):是一个指令的集合.程序不能独立执行,只有被加载到内存中,系统为他分配资源后才能执行. 进程(process):一个执行中的程序称为进程. 进程是系统分配资源的独立单位,每个进程战友特定的地址空间. 程序是进程的静态文本描述.进程是程序在系统内顺序执行的动态活动. 线程(thread):是进程的“单一的连续控制流程”. 线程是CPU调度和分配的基本单位,是比进程更小的能独立运行的基本单位,也被称为轻量级的进程. 线程不能独立存在,必须依附于某个进程…
2.程序,进程和线程的区别 马克-to-win:程序,进程和线程的区别是什么?这个问题比较抽象难理解,但又非常重要.我并不想给出一大堆抽象的学术解释,那样只能误国误民.所以我先给大家举一个例子.马克-to-win: 2000年的时候,我比较爱用ie的老版本.当时我喜欢边上网边下载很多东西,比如很多MP3同时下.我发觉如果我打开一个ie,之后用file/new,new出很多窗口来,边看网页,边下载很多mp3的话,如果有一个下载崩溃的话,所有的ie窗口就同时都崩溃了,包括网页和所有的下载窗口.马克-…
1 相关概念 1.1 临界区 保证在某一时刻只有一个线程能访问数据的简便方法,在任意时刻只允许一个线程对资源进行访问.如果有多个线程试图同时访问临界区,那么在有一个线程进入后,其他所有试图访问临界区的线程将被挂起,并一直持续到进入临界区的线程离开.临界区在被释放后,其他线程可以继续抢占,并以此达到用原子方式操作共享资源的目的 1.2 互斥量 互斥量和临界区很相似,只能拥有互斥对象的线程才能具有访问资源的权限,由于互斥对象只有一个,因此就决定了任何情况下次共享资源都不会同时被多个线程所访问.当前占…
之前看了2天的多线程,就不看了.现在继续拾起来吧.最近有点松散,多线程内容都是看毕向东的视频以及网络教程和各种书籍 什么是进程? 通俗一点讲,就是正在进行的程序,进程是操作系统控制的基本运行单元: 如上图所示,谷歌浏览器正在运行着,它就是一个进行中的程序,也就是进程. 什么是线程? 进程中独立运行的子任务就是一个线程.像QQ.exe运行的时候就有很多子任务在运行,比如聊天线程.下载文件线程等. 为什么要用多线程? 如图所示: 单任务: 任务1执行10秒,10秒之后,再可以执行任务2. 任务2必须…
&与&&都是逻辑与 不同的是&左右两边的判断都要进行,而&&是短路与,当&&左边条件为假则不用再判断右边条件,所以效率更高 例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常.If(x==33 &…
进程和线程的区别 1.定义 进程:具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程:进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源. 2.关系 一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行. 相对进程而言,线程是一个更加接…
不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题. 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Client/Server),客户端/服务端,桌面应用程序 2.你所知道网络协议有那些? HTTP:超文本传输协议 FTP:文件传输协议 SMPT:简单邮件协议 TELNET:远程终端协议 POP3:邮件读取协议 3.Java都有那些开发平台? JAVA SE:主要用在客户端开发 JAVA EE:主要用…
这是一份Java基础知识的面试题.在网上的关于Java的面试题数不胜数,但认真看过感觉大多数都没有实用性,有很多是面试官根本就不会问到的,那些已经脱离了实际开发的技术问题.而这份资料来源自一份个人觉得最贴近真实面试的Java面试题,网上流传较少. 最近又对这份Java基础面试题重新整理了一遍,本人重新编辑后结合了自己许多次的面试经历和经验,做出了标记,划分了重点,以及对某些知识做出一些简单明白的注释,相信可以对需要回顾Java知识,以及准备着面试的Java开发工程师会有一定帮助. 1.    …
Java基础面试题 一.面向对象编程(OOP) 7 二.常见的Java问题 7 2.1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? 7 2.2.JDK和JRE的区别是什么? 8 2.4.是否可以在static环境中访问非static变量? 8 2.5.Java支持的数据类型有哪些?什么是自动拆装箱? 8 2.6.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? 8 2.7.Java中,什么是构造函数?什么是构造函数重载?什么是…
经典的Java基础面试题集锦,欢迎收藏和分享. 问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”. 问题:Java里的传引用和传值的区别是什么? 答案:传引用是指传递的是地址而不是值本身,传值则是传递值的一份拷贝. 问题:如果要重写一个对象的equals方法,还要考虑什么? 答案:hashCode. 问题:Java的”一次编写,处处运行”是如何实现的? 答案:Java程序会被编译成字节码组成的class文件,这些字节码可…