📄 actualtimerevent.java
字号:
/* * @(#)$Id: ActualTimerEvent.java,v 1.3 2004/07/02 23:59:22 huebsch Exp $ * * Copyright (c) 2001-2004 Regents of the University of California. * All rights reserved. * * This file is distributed under the terms in the attached BERKELEY-LICENSE * file. If you do not find these files, copies can be found by writing to: * Computer Science Division, Database Group, Universite of California, * 617 Soda Hall #1776, Berkeley, CA 94720-1776. Attention: Berkeley License * * Copyright (c) 2003-2004 Intel Corporation. All rights reserved. * * This file is distributed under the terms in the attached INTEL-LICENSE file. * If you do not find these files, copies can be found by writing to: * Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, * Berkeley, CA, 94704. Attention: Intel License Inquiry. */package runtime.services.timer;import services.timer.TimerClient;import util.FreeList;import util.FreeListFactory;/** * Class ActualTimerEvent * */public class ActualTimerEvent implements Comparable { private double executionTime; private Object data; private TimerClient client; private long id; private static long counter; private static FreeList freeList = new FreeList(new ActualTimerEventFactory()); /** * Constructor ActualTimerEvent */ protected ActualTimerEvent() {} /** * Method init * * @param executionTime * @param data * @param client */ public void init(double executionTime, Object data, TimerClient client) { this.executionTime = executionTime; this.data = data; this.client = client; this.id = counter++; } /** * Method getExecutionTime * @return */ public double getExecutionTime() { return executionTime; } /** * Method getData * @return */ public Object getData() { return data; } /** * Method getClient * @return */ public TimerClient getClient() { return client; } /** * Method compareTo * * @param other * @return */ public int compareTo(Object other) { ActualTimerEvent otherEvent = (ActualTimerEvent) other; if (executionTime < otherEvent.executionTime) { return -1; } if (executionTime > otherEvent.executionTime) { return 1; } if (id < otherEvent.id) { return -1; } if (id > otherEvent.id) { return 1; } return 0; } /** * Method equals * * @param other * @return */ public boolean equals(Object other) { ActualTimerEvent otherEvent = (ActualTimerEvent) other; return (id == otherEvent.id); } /** * Method toString * @return */ public String toString() { return "<TIMEEVENT: TIME:" + executionTime + ", ID:" + id + ", Client:" + client + ", Data:" + data + ">"; } /** * Method allocate * * @param executionTime * @param data * @param client * @return */ public static ActualTimerEvent allocate(double executionTime, Object data, TimerClient client) { ActualTimerEvent event; synchronized (freeList) { event = (ActualTimerEvent) freeList.allocate(); } event.init(executionTime, data, client); return event; } /** * Method free * * @param event */ public static void free(ActualTimerEvent event) { synchronized (freeList) { freeList.free(event); } }}/** * Class ActualTimerEventFactory * */class ActualTimerEventFactory implements FreeListFactory { /** * Method create * @return */ public Object create() { return new ActualTimerEvent(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -