IGZ0224S   There was an attempt to run COBOL programs in more than one thread and all of the COBOL programs were not enabled for multithreading. The error was detected when attempting to run COBOL program program-name.

Explanation

There was an attempt to run COBOL programs that are not enabled for multithreading in more than one thread. In order to run COBOL programs in more than one thread, all of the COBOL programs in the application must be compiled with the Enterprise COBOL compiler using the THREAD compiler option.

COBOL programs compiled with the following compilers can only run in one thread at a time:

  • Enterprise COBOL with the NOTHREAD compiler option
  • COBOL for OS/390 & VM
  • COBOL for MVS & VM
  • COBOL/370
  • VS COBOL II
  • OS/VS COBOL

This condition can occur when PL/I multitasking is used or when POSIX(ON) is in effect.

If PL/I multitasking is used, here are examples that can cause this condition:

  • If an Enterprise COBOL program compiled without the THREAD compiler option or a COBOL for OS/390® & VM program has been invoked in the main task, then any attempts to invoke a COBOL program in a subtask created by a PL/I statement with the TASK, EVENT or the PRIORITY option will cause this condition to be signaled.
  • If an Enterprise COBOL program compiled without the THREAD compiler option or a COBOL for OS/390 & VM program has been invoked in a subtask, then any attempts to invoke a COBOL program in any other task will cause this condition to be signaled until the subtask is terminated.

If POSIX(ON) is in effect, here are examples that can cause this condition:

  • If an Enterprise COBOL program compiled without the THREAD compiler option or a COBOL for OS/390 & VM program has been invoked in the initial thread, then any attempts to invoke a COBOL program in a non-initial thread will cause this condition to be signaled.
  • If an Enterprise COBOL program compiled without the THREAD compiler option or a COBOL for OS/390 & VM program has been invoked in a non-initial thread, then any attempts to invoke a COBOL program in another thread will cause this condition to be signaled until the non-initial thread in which a COBOL program was invoked is terminated.

System action

The application is terminated.

Programmer response

Compile all the COBOL programs with the Enterprise COBOL using the THREAD compiler option.

Symbolic Feedback Code

IGZ070