forked from yuxh/gearman-go
		
	fix a bug when high qps
This commit is contained in:
		
							parent
							
								
									21cc8de64f
								
							
						
					
					
						commit
						99c8032384
					
				@ -90,16 +90,22 @@ func (a *agent) work() {
 | 
			
		||||
			leftdata = data
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
		if inpack, l, err = decodeInPack(data); err != nil {
 | 
			
		||||
			a.worker.err(err)
 | 
			
		||||
			leftdata = data
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
		leftdata = nil
 | 
			
		||||
		inpack.a = a
 | 
			
		||||
		a.worker.in <- inpack
 | 
			
		||||
		if len(data) > l {
 | 
			
		||||
			leftdata = data[l:]
 | 
			
		||||
		for {
 | 
			
		||||
			if inpack, l, err = decodeInPack(data); err != nil {
 | 
			
		||||
				a.worker.err(err)
 | 
			
		||||
				leftdata = data
 | 
			
		||||
				break
 | 
			
		||||
			} else {
 | 
			
		||||
				leftdata = nil
 | 
			
		||||
				inpack.a = a
 | 
			
		||||
				a.worker.in <- inpack
 | 
			
		||||
				if len(data) == l {
 | 
			
		||||
					break
 | 
			
		||||
				}
 | 
			
		||||
				if len(data) > l {
 | 
			
		||||
					data = data[l:]
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user