public long getFirstCacheTime() { if (mCaches != null && mCaches.size() > 0) { BaseDanmaku firstItem = mCaches.first(); if (firstItem == null) return 0; return firstItem.time; } return 0; }
private boolean push(BaseDanmaku item, int itemSize, boolean forcePush) { int size = itemSize; // sizeOf(item); while (mRealSize + size > mMaxSize && mCaches.size() > 0) { BaseDanmaku oldValue = mCaches.first(); if (oldValue.isTimeOut()) { entryRemoved(false, oldValue, item); mCaches.removeItem(oldValue); } else { if (forcePush) { break; } return false; } } this.mCaches.addItem(item); mRealSize += size; // Log.e("CACHE", "realsize:"+mRealSize + ",size" + size); return true; }