> One of the hassles with Windows is that you cannot delete or replace an executable or dll if any process is using it.
> If an EPICS client or IOC is run on Windows it will launch a caRepeater process that runs in the background.
> If you want to update your EPICS installation you must kill that caRepeater process before you can do so.
The Java CA client implementation has the same issue:
Run any program that uses the CA client for the first time, and it launches a caRepeater Java process.
Closing all clients leaves that process running.
For the
Java CA client, there's a property
-DCA_DISABLE_REPEATER=true
that will keep it from launching the caRepeater.
Most members of the general public will never notice that they don't have a CA repeater.
Worst that can happen is that after an IOC reboots, you need to close/reopen some display.
The automatic re-connect supported by the caRepeater is essential in the control room, but for people in their office who start a tool, look at it, close it, the dangling caRepeater instance may be more bug than feature.
Is it worthwhile to have the C implementation also look for a
CA_DISABLE_REPEATER type setting?
Thanks,
-Kay
|