Next: "Catchall" Throttling Up: How Throttling Works Previous: "Wildcarding"

Threads and Summary Messages

There are two ways to build CMLOG throttling, threaded and non-threaded. For more info on how to build CMLOG without threads, please refer to the section on files to modify in order to run CMLOG throttling.

All applications that plan to use CMLOG must be built with whatever version is currently present in the libraries that the CMLOG environment variables are pointing to. At present, the only way to currently know which version is present in CMLOG is to view the file $CMLOG/Client/Makefile.

Please note that the current setup of CMLOG only allows for one version to run at a time (either threaded or non-threaded). So, you cannot build some applications to use the threaded version of CMLOG and others to use the non-threaded version CMLOG, and have them pointing to the same library. A way around this is to copy the non-threaded libraries and executables to another directory. You will need to change some environment variables, however. Please refer to the files to modify section on how to modify environment variables.

Also, if you plan to use the non-threaded version of CMLOG, please note that in order for the SLAC Filter to send out throttle status messages on time, you must call the checkThrottleStatus() method at least once a second in your client application or as a separate process which calls the method on your IOC(vxWorks only). If your application does not call this method at least once per second, the timing of the status messages may not be what you would otherwise expect.
James Silva
2002-11-04