BaseTools: Enable block queue log agent.

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1875

To support Ctrl+S and Ctrl+Q, we enable block queue
for log.

Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Acked-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
Feng, Bob C
2019-07-31 13:33:31 +08:00
parent 4acae2b38e
commit 1a624dd7cf
3 changed files with 31 additions and 24 deletions

View File

@ -23,13 +23,14 @@ except:
import traceback
import sys
from AutoGen.DataPipe import MemoryDataPipe
import logging
def clearQ(q):
try:
while True:
q.get_nowait()
except Empty:
pass
import logging
class LogAgent(threading.Thread):
def __init__(self,log_q,log_level,log_file=None):
@ -123,9 +124,10 @@ class AutoGenManager(threading.Thread):
def clearQueue(self):
taskq = self.autogen_workers[0].module_queue
logq = self.autogen_workers[0].log_q
clearQ(taskq)
clearQ(self.feedback_q)
clearQ(logq)
def TerminateWorkers(self):
self.error_event.set()
def kill(self):