public bool TryComplete() { if (completed) { return true; } if (HasExpired) { return false; } this.completed = true; return true; }