improve the implement of PerMessageContextLifetimeManager