diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/cooker.py | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index fb71a968f2..2264b18c54 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -2041,32 +2041,32 @@ class Parser(multiprocessing.Process): | |||
2041 | self.init() | 2041 | self.init() |
2042 | 2042 | ||
2043 | pending = [] | 2043 | pending = [] |
2044 | while True: | 2044 | try: |
2045 | try: | 2045 | while True: |
2046 | self.quit.get_nowait() | ||
2047 | except queue.Empty: | ||
2048 | pass | ||
2049 | else: | ||
2050 | self.results.close() | ||
2051 | self.results.join_thread() | ||
2052 | break | ||
2053 | |||
2054 | if pending: | ||
2055 | result = pending.pop() | ||
2056 | else: | ||
2057 | try: | 2046 | try: |
2058 | job = self.jobs.pop() | 2047 | self.quit.get_nowait() |
2059 | except IndexError: | 2048 | except queue.Empty: |
2060 | self.results.close() | 2049 | pass |
2061 | self.results.join_thread() | 2050 | else: |
2062 | break | 2051 | break |
2063 | result = self.parse(*job) | 2052 | |
2064 | # Clear the siggen cache after parsing to control memory usage, its huge | 2053 | if pending: |
2065 | bb.parse.siggen.postparsing_clean_cache() | 2054 | result = pending.pop() |
2066 | try: | 2055 | else: |
2067 | self.results.put(result, timeout=0.25) | 2056 | try: |
2068 | except queue.Full: | 2057 | job = self.jobs.pop() |
2069 | pending.append(result) | 2058 | except IndexError: |
2059 | break | ||
2060 | result = self.parse(*job) | ||
2061 | # Clear the siggen cache after parsing to control memory usage, its huge | ||
2062 | bb.parse.siggen.postparsing_clean_cache() | ||
2063 | try: | ||
2064 | self.results.put(result, timeout=0.25) | ||
2065 | except queue.Full: | ||
2066 | pending.append(result) | ||
2067 | finally: | ||
2068 | self.results.close() | ||
2069 | self.results.join_thread() | ||
2070 | 2070 | ||
2071 | def parse(self, mc, cache, filename, appends): | 2071 | def parse(self, mc, cache, filename, appends): |
2072 | try: | 2072 | try: |