We use this tense:
1. When we want to emphasise the duration of an action up to a certain time in the future.
By the time Tim retires, he will have been working for the same company for 20 years.
By the time he finishes work, we will have been waiting for more than an hour.
|Positive||Subject + will have been + V-ing|
|Negative||Subject +will not have been + V-ing|
|Questions||Will + subject + have been + V-ing ?|