所有的线程都有一个优先级,当几个线程正等待机会时决定应该执行哪个。这使得可能一个线程可以比另一个得到更多的对处理器资源的访问。让我们考虑一个如何使用优先级的基本例子。假设你有一个某程序中的线程,该程序需要所有的处理器资源--某些又难又长的计算。另一些线程需要的资源相对较少。通过将需要所有资源的线程设置成低优先级,你可以确保其他的线程可以立即执行,而被线程约束的处理器在其他线程轮流处理之后剩下的处理周期处理该线程。
private list inTray Collections.synsnonizedl.ist(new LinkedList());
private int maxTransactions //Max transaction in the intray
注意我们从构造函数中删除了将inTray初始化成null的语句:现在我们是针对一个表,我们必须改写Clerk类中的doTransaction方法只要表中交易数少于MaxTransactions,就向表中存储交易。这里被修改的代码如下:
while(inTray.size()>=maxTrarsactions)
Try
{
wail();
system.io println;
{
inTray.add)transaction);
表的size()方法返回表中包含的对象个数,因此检查这个是件无关紧要的事。我们使用add()方法在表尾添加一个新的Transaction对象。
职员调用run()方法从输入托盘中检索对象。因此为了处理表,我们必须更新该方法。
线程是一个程序中的子任务,可以并行执行。
考无忧小编推荐:
更多计算机等级考试真题及答案>>>点击查看
想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>点击查看
本文网址:http://www.k51.com.cn/info/jsjdjks/1802/0126075.html