fix build

This commit is contained in:
fakeshadow 2021-04-17 19:21:34 +08:00
parent d38c088139
commit d428ac275e
2 changed files with 7 additions and 6 deletions

View File

@ -118,7 +118,7 @@ impl Accept {
let (handles_accept, handles_server) = (0..builder.threads)
.map(|idx| {
// start workers
let availability = WorkerAvailability::new(waker_queue.clone());
let availability = WorkerAvailability::new(idx, waker_queue.clone());
let factories = builder.services.iter().map(|v| v.clone_factory()).collect();
ServerWorker::start(idx, factories, availability, builder.worker_config)
@ -237,17 +237,18 @@ impl Accept {
// from backpressure.
Some(WakerInterest::WorkerAvailable(idx)) => {
drop(guard);
self.maybe_backpressure(sockets, false);
self.avail.set_available(idx, true);
self.maybe_backpressure(sockets, false);
}
// a new worker thread is made and it's handle would be added to Accept
Some(WakerInterest::Worker(handle)) => {
drop(guard);
self.avail.set_available(handle.idx(), true);
self.handles.push(handle);
// maybe we want to recover from a backpressure.
self.maybe_backpressure(sockets, false);
self.avail.set_available(handle.idx, true);
self.handles.push(handle);
}
Some(WakerInterest::Pause) => {
drop(guard);

View File

@ -184,7 +184,7 @@ impl ServerInner {
error!("Worker {} has died, restarting", idx);
let availability = WorkerAvailability::new(self.waker_queue.clone());
let availability = WorkerAvailability::new(idx, self.waker_queue.clone());
let factories = self
.services
.iter()