Understanding google's user level threads in kernel threads
This is talking about user level threads, so they should all have the same memory context (virtual memory map).  So while the threads need to be careful in doing so, they can all access each other's objects directly without using inter-process communication.

The scheduler will give each thread a time slot to run in (length possibly depending on priority).  He is discussing an addition to the kernel to allow a request:


  pid_t switchto_switch(pid_t tid)
  
  
  Synchronously transfer control to target sibling thread, leaving the
  current thread unscheduled.
  Analogous to: Atomically { Resume(t1); Wait(NULL); }
  


So as a programmer, if you had work on a task that you need to stop and wait for information from another task before you can continue, then you could request to immediately switch to that specific thread.

Your intial thread would immediately be put in a wait state, and the other thread would resume execution using the initial thread's currently scheduled time ("B inherits A’s virtual runtime").