By the time I have eaten my breakfast,it's eight o'clock.请解释一下这一句中by the time的用法.

问题描述:

By the time I have eaten my breakfast,it's eight o'clock.请解释一下这一句中by the time的用法.
为什么从句要用现在完成时?
我一般见得都是By the time 过去时,过去完成时。没有见过By the time加现在完成时的,所以不太懂啊。

by the time 有两个意思
1、到...为止,一般要求主句用过去完成时.
He had left by the time we reached home.
当我们到家的时候他已经走了.
The movie had begun by the time we got there.
当我们到那儿的时候,电影已经开始了.
2、…当……的时候;
如果只是说过去某个时候的状况,用过去时,而不用完成时.
By the time the war was over ,death and suffering were to be seen everywhere.在战争结束的时候,到处可见死亡和饥饿.这里没有“死亡和饥饿”已经完成的意思,只是描述当时这个时间点的状况.所以用过去时.
By the time we arrived the meeting was over.
我们到达时,会议已结束了.