public abstract class AbstractXSRunnableXSWritable<T_DPCK extends XSDataPacket<?,?>> extends AbstractXSRunnable implements XSWritable<T_DPCK>
| Constructor and Description |
|---|
AbstractXSRunnableXSWritable(java.lang.String name,
CommunicationType communicationType) |
AbstractXSRunnableXSWritable(java.lang.String name,
CommunicationType communicationType,
boolean trackPerformance) |
| Modifier and Type | Method and Description |
|---|---|
void |
deliver(T_DPCK packet)
delivers a packet at this writable.
|
CommunicationType |
getCommunicationType() |
XSDeliveryLock |
getDeliveryLock() |
protected long[] |
getHandlingTimes() |
XSRunnable |
getLatestWritingThread() |
protected long[] |
getMemoryUsage() |
protected int |
getNextHandlingTimeIndex() |
protected int |
getNextMemoryUsageIndex() |
protected T_DPCK |
getNextPacket() |
long |
getNumberOfPacketsReceived() |
long[] |
getPacketHandlingTimes() |
int |
getPerformanceTrackerStepSize() |
long[] |
getUsedMemory() |
protected abstract void |
handleNextPacket(T_DPCK packet) |
boolean |
isTrackingPerformance() |
protected boolean |
isTrackPerformance() |
protected long |
measureUsedMemory()
measures actual memory currently used by the algorithm.
|
protected void |
setHandlingTimes(long[] handlingTimes) |
void |
setLatestWritingThread(XSRunnable latestWritingThread) |
protected void |
setMemoryUsage(long[] memoryUsage) |
protected void |
setNextHandlingTimeIndex(int nextHandlingTimeIndex) |
protected void |
setNextMemoryUsageIndex(int nextMemoryUsageIndex) |
void |
setPerformanceTrackerStepSize(int performanceTrackerStepSize) |
void |
setTrackPerformance(boolean track) |
protected void |
storeNewPacket(T_DPCK packet) |
void |
triggerPacketHandle(T_DPCK dataPacket)
access method of the deliver procedure, i.e.
|
protected void |
workPackage()
Conceptually the (thread executing) the work package does the following:
1.
|
interrupt, isPaused, isRunning, isStarted, isStopped, pause, pauseXSRunnable, run, start, startXSRunnable, stopXSRunnableactiveCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, stop, suspend, toString, yieldequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetName, stoppublic AbstractXSRunnableXSWritable(java.lang.String name,
CommunicationType communicationType)
public AbstractXSRunnableXSWritable(java.lang.String name,
CommunicationType communicationType,
boolean trackPerformance)
public final void deliver(T_DPCK packet)
deliver in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>public CommunicationType getCommunicationType()
getCommunicationType in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>public XSDeliveryLock getDeliveryLock()
getDeliveryLock in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>protected long[] getHandlingTimes()
public XSRunnable getLatestWritingThread()
protected long[] getMemoryUsage()
protected int getNextHandlingTimeIndex()
protected int getNextMemoryUsageIndex()
protected T_DPCK getNextPacket()
public long getNumberOfPacketsReceived()
getNumberOfPacketsReceived in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>public long[] getPacketHandlingTimes()
getPacketHandlingTimes in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>public int getPerformanceTrackerStepSize()
public long[] getUsedMemory()
getUsedMemory in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>protected abstract void handleNextPacket(T_DPCK packet)
public boolean isTrackingPerformance()
isTrackingPerformance in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>protected boolean isTrackPerformance()
protected void setHandlingTimes(long[] handlingTimes)
public void setLatestWritingThread(XSRunnable latestWritingThread)
protected void setMemoryUsage(long[] memoryUsage)
protected void setNextHandlingTimeIndex(int nextHandlingTimeIndex)
protected void setNextMemoryUsageIndex(int nextMemoryUsageIndex)
public void setPerformanceTrackerStepSize(int performanceTrackerStepSize)
setPerformanceTrackerStepSize in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>public void setTrackPerformance(boolean track)
setTrackPerformance in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>protected void storeNewPacket(T_DPCK packet)
protected long measureUsedMemory()
protected final void workPackage()
workPackage in class AbstractXSRunnablepublic void triggerPacketHandle(T_DPCK dataPacket)
XSWritabletriggerPacketHandle in interface XSWritable<T_DPCK extends XSDataPacket<?,?>>