#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import time
import multiprocessing as mp
def lambda_func(name):
print("Hello %s" % name)
def lambda_func2(name):
print("Super Hello %s" % name)
def mp_worker(mp_q):
while True:
if mp_q.empty():
time.sleep(1)
continue
msg = mp_q.get()
if str(type(msg)) == "<class 'function'>": # И таааак сойдет…
msg("<name> from sub-proccess")
if msg is None:
break # Stop that loop
def main():
mp_q = mp.Queue()
proc = mp.Process(target=mp_worker, args=(mp_q, ))
proc.start()
time.sleep(1)
mp_q.put(lambda_func)
time.sleep(2)
mp_q.put(lambda_func2)
time.sleep(1)
mp_q.put(None)
if __name__ == '__main__':
main()