private Task <bool> AwaitForAnswer()
    {
        TaskCompletionSource <bool> awaitableResult = new TaskCompletionSource <bool>(true);

        Task.Factory.StartNew(() =>
        {
            while (true)
            {
                Thread.Sleep(2000);
                var answare = CurrentProcess.GetAnswer(this.Id);
                if (!answare.HasAnswered)
                {
                    continue;
                }
                awaitableResult.SetResult(answare.Value);
                break;
            }
        });

        return(awaitableResult.Task);
    }