Job与thread的关系
问:
学了半年了,没弄懂job 进程 thread 之间的关系,恳请高手给予指点。
答:
在400下,thread 执行方式有两种:流处理,和并发处理。流处理的最小单位是module。一个PGm可以是一个,或者多个procedures编译成的多个modules组成。
一个job是提交执行一个pgm。
当一个subsystem下的jobq对同优先级的job并发数大于1时,就是说一个时间点可以同时提交执行相同的pgm并发数大于1,这时各自的job(jobid)按照不同的处理流程的执行时间点,执行相同的PGM。可以抽象的理解,一个thread是执行一个pgm的时间点处理。一个Pgm可以同时存在多个threads,这些threads在这个pgm不同的目标代码执行点上。
示意图:
THREAD 目标代码 源代码
Thread n -> 01011010011101101010… chain key1 file1 RecDs1;
Thread n-1 -> 01011010011101101010… if %found(file1);
…..
-> 01100101110101101010…read rec;
Thread i -> 01111010111101101010… dow not %eof(filen);
……
阅读(2046) | 评论(0) | 转发(0) |