http://blog.csdn.net/elfylin/article/details/7072406
1. Timer.start
void TimerBase::start
TimerBase::setNextFireTime
ThreadTimers::updateSharedTimer
SharedTimer::setFireTime
MainThreadSharedTimer::setFireTime
MainThreadSharedTimer::setSharedTimerFireTime
TimerClient::setSharedTimer
JavaBridge::setSharedTimer
JWebCoreJavaBridge.java::setSharedTimer
JWebCoreJavaBridge.java::fireSharedTimer
JWebCoreJavaBridge.java::sharedTimerFired
JavaBridge::SharedTimerFired
JavaBridge::sSharedTimerFiredCallback
2.set firedfunc
ThreadTimers::sharedTimerFired()/static Vector<TimerBase*>& timerHeap()/TimerBase::setNextFireTime
ThreadTimers& ThreadGlobalData::threadTimers()
ThreadTimers::ThreadTimers
ThreadTimers::setSharedTimer(ThreadTimers::sharedTimerFired)
MainThreadSharedTimer::setFiredFunction
setSharedTimerFiredFunction(void (*f)()) (SharedTimerAndroid.cpp)
ThreadGlobalData has "HashMap<ThreadIdentifier, ThreadTimers* > m_threadTimers"
ThreadTimer has "Vector<TimerBase*> m_timerHeap"
3.TimerFired
ThreadTimers::sharedTimerFired
threadGlobalData().threadTimers().sharedTimerFiredInternal();
void ThreadTimers::sharedTimerFiredInternal()
Timer::fired()
TimerFiredClass::TimerFiredFunction()