how many times do you think I shall say that your while(...) is* blocking before you will think that might be the cause?

*guessing since you are still hiding that code...