7 """ |
7 """ |
8 Module implementing a Qt free version of a background client for the various |
8 Module implementing a Qt free version of a background client for the various |
9 checkers and other python interpreter dependent functions. |
9 checkers and other python interpreter dependent functions. |
10 """ |
10 """ |
11 |
11 |
|
12 import contextlib |
12 import io |
13 import io |
13 import json |
14 import json |
|
15 import multiprocessing |
14 import socket |
16 import socket |
15 import struct |
17 import struct |
16 import sys |
18 import sys |
17 import time |
19 import time |
18 import traceback |
20 import traceback |
19 import contextlib |
|
20 from zlib import adler32 |
21 from zlib import adler32 |
21 |
22 |
22 |
23 |
23 class BackgroundClient: |
24 class BackgroundClient: |
24 """ |
25 """ |
232 "Host, port, max. processes and Python library path parameters" |
233 "Host, port, max. processes and Python library path parameters" |
233 " are missing. Aborting..." |
234 " are missing. Aborting..." |
234 ) |
235 ) |
235 sys.exit(1) |
236 sys.exit(1) |
236 |
237 |
|
238 multiprocessing.set_start_method("spawn") |
|
239 |
237 host, port, maxProcs, pyLibraryPath = sys.argv[1:] |
240 host, port, maxProcs, pyLibraryPath = sys.argv[1:] |
238 |
241 |
239 # insert pyLibraryPath into the search path because external stuff might |
242 # insert pyLibraryPath into the search path because external stuff might |
240 # be installed in the eric (virtual) environment |
243 # be installed in the eric (virtual) environment |
241 sys.path.insert(1, pyLibraryPath) |
244 sys.path.insert(1, pyLibraryPath) |