Is there a way to terminate a lengthy SKILL script without having to kill the Cadence process?
My experience is that control-c will do the job in between skill commands. However, if you have a command like dbGetTrueOverlaps that is taking a while to run because it was given too much area, the control-c will not work until that particular command completes. As long as your skill code is progressing from one command to the next the control-c works just fine.
Potentially that function could be enhanced to periodically call the check for ctrl-C to allow it to be interrupted (of course, it would need to clean up gracefully too) - if you want that, log a service request.
We've just done this (for IC616 I think) for a few SKILL list processing functions where they could get stuck when processing circular lists, and it shouldn't impact performance if done properly.