| 
 | 
    
 | 
    
 | 
  
  
    | 
 | 
    
 Send to data queue (waiting forever)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Send to data queue (polling)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Send to data queue (polling)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Send to data queue (with time-out)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Forced send to data queue
  
 | 
    
 | 
  
  
    | 
 | 
    
 Forced send to data queue
  
 | 
    
 | 
  
  
    | 
 | 
    
 Receive from data queue (waiting forever)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Receive from data queue (polling)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Receive from data queue (polling)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Receive from data queue (with time-out)
  
 | 
    
 | 
  
  
    | 
 | 
    
 Reference data queue state
  
 | 
    
 | 
  
  
    | 
 | 
    
 Reference data queue state
  
 | 
    
 |