It occurs when the continuation of task is syncrhonous, which is not always.
The callback in native holds a mutex, if user code tries to call SetPlayPositionAsync right after awaiting SetPlayPositionAsync. It could be blocked, the mutex is still locked.
Change-Id: Ia968ab8d6e01401d3e5ee6551ebf8ae62ac99ea1
Signed-off-by: coderhyme <jhyo.kim@samsung.com>
{
ValidatePlayerState(PlayerState.Ready, PlayerState.Playing, PlayerState.Paused);
- var taskCompletionSource = new TaskCompletionSource<bool>();
+ var taskCompletionSource = new TaskCompletionSource<bool>(TaskCreationOptions.RunContinuationsAsynchronously);
bool immediateResult = _source is MediaStreamSource;