How to synchronize services running under different IS&a

I have a service that is started by the scheduler every n seconds. It reads an Oracle table, processes any records it finds, deletes them and terminates.

In order to implement High Availability, I want to run the service in another IS instance but synchronize them such that they can detect when one is processing and terminate. That way, if one IS instance goes down the other one will handle the processing. It does not matter which instance performs the processing as long as one does.

One idea was to use Oracle table locks. Oracle removes the lock when the application that locked the table goes away, which is what I want. But table locks cannot be implemented using WM JDBC Adapter Services.

Any ideas?