public void callLater(double delayMilliseconds, IRunnable callback) { DelayedCallTable.Entry entry = new DelayedCallTable.Entry (delayMilliseconds, callback); // Insert into table_, sorted on getCallTime(). // Search from the back since we expect it to go there. int i = table_.Count - 1; while (i >= 0) { if ((table_[i]).getCallTime() <= entry.getCallTime()) break; --i; } // Element i is the greatest less than or equal to // entry.getCallTime(), so insert after it. table_.Insert(i + 1, entry); }
public void callLater(double delayMilliseconds, IRunnable callback) { DelayedCallTable.Entry entry = new DelayedCallTable.Entry(delayMilliseconds, callback); // Insert into table_, sorted on getCallTime(). // Search from the back since we expect it to go there. int i = table_.Count - 1; while (i >= 0) { if ((table_[i]).getCallTime() <= entry.getCallTime()) { break; } --i; } // Element i is the greatest less than or equal to // entry.getCallTime(), so insert after it. table_.Insert(i + 1, entry); }