How to make a task start right after another one finish in google app engine?
If you only have two tasks, you can start task B at the end of task A. For example, a task that updates user scores can start a task to send emails after it finished updating scores.
In this case, you are guaranteed that task B is executed after task A, but there is no guarantee that there is no task C in between them - unless, of course, you don't have task C - or any other tasks - at all.
On taskqueue in gae. 
For example, I have task A, B.
How to ensure that task B starts right after task A finishes.
There could be other tasks, like C, to fix this problem.
Also, 'right after' could be loose to 'after'.
How about a dedicate queue with max_current_requests set to 1?