当前位置: 首页 > news >正文

网站开发时间进度wordpress 近期文章 修改

网站开发时间进度,wordpress 近期文章 修改,传奇服务器多少钱一个月,一个新产品怎么推广Java线程可以有优先级的设定#xff0c;高优先级的线程比低优先级的线程有更高的几率得到执行(不完全正确#xff0c;请参考下面的“线程优先级的问题“)。记住当线程的优先级没有指定时#xff0c;所有线程都携带普通优先级。优先级可以用从1到10的范围指定。10表示最高优先…Java线程可以有优先级的设定高优先级的线程比低优先级的线程有更高的几率得到执行(不完全正确请参考下面的“线程优先级的问题“)。记住当线程的优先级没有指定时所有线程都携带普通优先级。优先级可以用从1到10的范围指定。10表示最高优先级1表示最低优先级5是普通优先级。记住优先级最高的线程在执行时被给予优先。但是不能保证线程在启动时就进入运行状态。与在线程池中等待运行机会的线程相比当前正在运行的线程可能总是拥有更高的优先级。由调度程序决定哪一个线程被执行。t.setPriority()用来设定线程的优先级。记住在线程开始方法被调用之前线程的优先级应该被设定。你可以使用常量如MIN_PRIORITY,MAX_PRIORITYNORM_PRIORITY来设定优先级优先级的取值Java线程的优先级是一个整数其取值范围是1 (Thread.MIN_PRIORITY ) - 10 (Thread.MAX_PRIORITY )。Thread源代码里对NORM_PRIORITY (数值为5) 的注释是“线程默认的优先级”public static final int MIN_PRIORITY 1;public static final int NORM_PRIORITY 5;public static final int MAX_PRIORITY 10;其实不然。默认的优先级是父线程的优先级。在init方法里Thread parent currentThread();this.priority parent.getPriority();或许这么解释是因为Java程序的主线程(main方法)的优先级默认是为NORM_PRIORITY这样不主动设定优先级的后续创建的线程的优先级也都是NORM_PRIORITY了。public static void main(String[] args) {System.out.println(Thread.currentThread().getPriority());}其执行结果是5。设置优先级可以通过setPriority方法(final的不能被子类重载)更改优先级。优先级不能超出1-10的取值范围否则抛出IllegalArgumentException。另外如果该线程已经属于一个线程组(ThreadGroup)该线程的优先级不能超过该线程组的优先级public final void setPriority(int i) {checkAccess();if(i 10 || i 1)throw new IllegalArgumentException();ThreadGroup threadgroup;if((threadgroup getThreadGroup()) ! null) {if(i threadgroup.getMaxPriority())i threadgroup.getMaxPriority();setPriority0(priority i);}}其中setPriority0是一个本地方法。private native void setPriority0(int i);线程组的最大优先级我们可以设定线程组的最大优先级当创建属于该线程组的线程时该线程的优先级不能超过这个数。线程组最大优先级的设定系统线程组的最大优先级默认为Thread.MAX_PRIORITY创建线程组的时候其最大优先级默认为父线程组(如果未指定父线程组则其父线程组默认为当前线程所属线程组)的最大优先级可以通过setMaxPriority更改最大优先级但无法超过父线程组的最大优先级setMaxPriority的问题该方法只能更改本线程组及其子线程组(递归)的最大优先级。但不能影响已经创建的直接或间接属于该线程组的线程的优先级也就是说即使目前有一个子线程的优先级比新设定的线程组优先级大也不会更改该子线程的优先级。只有当试图改变子线程的优先级或者创建新的子线程的时候线程组的最大优先级才起作用。线程优先级的问题对于线程优先级我们需要注意* Thread.setPriority()可能根本不做任何事情这跟你的操作系统和虚拟机版本有关* 线程优先级对于不同的线程调度器可能有不同的含义可能并不是你直观的推测。特别地优先级并不一定是指CPU的分享。在UNIX系统优先级或多或少可以认为是CPU的分配但Windows不是这样* 线程的优先级通常是全局的和局部的优先级设定的组合。Java的setPriority()方法只应用于局部的优先级。换句话说你不能在整个可能的范围 内设定优先级。(这通常是一种保护的方式你大概不希望鼠标指针的线程或者处理音频数据的线程被其它随机的用户线程所抢占)* 不同的系统有不同的线程优先级的取值范围但是Java定义了10个级别(1-10)。这样就有可能出现几个线程在一个操作系统里有不同的优先级在另外一个操作系统里却有相同的优先级(并因此可能有意想不到的行为)* 操作系统可能(并通常这么做)根据线程的优先级给线程添加一些专有的行为(例如”only give a quantum boost if the priority is below X“)。这里再重复一次优先级的定义有部分在不同系统间有差别。* 大多数操作系统的线程调度器实际上执行的是在战略的角度上对线程的优先级做临时操作(例如当一个线程接收到它所等待的一个事件或者I/O)通常操作系统知道最多试图手工控制优先级可能只会干扰这个系统。* 你的应用程序通常不知道有哪些其它进程运行的线程所以对于整个系统来说变更一个线程的优先级所带来的影响是难于预测的。例如你可能发现你有一个预期 为偶尔在后台运行的低优先级的线程几乎没有运行原因是一个病毒监控程序在一个稍微高一点的优先级(但仍然低于普通的优先级)上运行并且无法预计你程序 的性能它会根据你的客户使用的防病毒程序不同而不同。实际编码注意事项不要假定高优先级的线程一定先于低优先级的线程执行不要有逻辑依赖于线程优先级否则可能产生意外结果
http://www.pierceye.com/news/117/

相关文章:

  • 网站做图标链接泉州哪里做网站
  • 网站聊天代码销售管理系统包括哪几大模块
  • 空壳网站数据微信公众平台视频网站开发
  • 杭州网站开发公司浙江1万家企业
  • 做平面设计买哪个素材网站会员建设部网站如何下载文件
  • 郑州市金水区建设局官方网站wordpress 关键词过滤
  • 支付宝怎么做网站维护中国建设银行网站忘记密码怎么办
  • 网页制作与网站建设实战大全pdf网站备案登录
  • 那个网站做图片好看wordpress模板专题页
  • 做电影网站危险吗西安招标信息网官网
  • 建一个网站需要什么条件广告设计公司开的版面费
  • 伊川网站建设沈阳专业网站建设公司
  • 15年做哪个网站致富简约网站程序
  • 做推广用的网站做公司网站需要多久
  • 建手机网站的必要性成品门户网站源码免费
  • 虚拟主机网站源码企业建设网站有哪些费用
  • 自己做一个app软件大概要多少钱长沙关键词优化新报价
  • 凡科网站 怎么开支付自己做网站怎么能被访问
  • 怎么建立公司网站?seo网站优化优化排名
  • 网站举报百色建设网站
  • 网站 位置导航wordpress原生app
  • 怎么查看自己网站是否被收录上海市城市建设管理局网站
  • 网站提供的链接合肥电脑网站建站
  • 国外室内设计网站排名泰安专业网站开发公司
  • win2003 做网站服务器品牌营销咨询机构
  • 免费企业推广网站菏泽网站建设菏泽众皓
  • 中山小榄网站慕课网站开发
  • 企业建站公司流程90设计网站是不是没有视频模板
  • 如何免费推广网站做问卷比较好的网站
  • 建设企业网站是静态还是动态好服装微信商城网站建设