On Tue, 27 Jul 2010 09:47:15 -0500, Paul Gilmartin <paulgboul...@aim.com> wrote:
>On Tue, 27 Jul 2010 09:01:46 -0500, Etienne Thijsse wrote: >> >>That may well be true. At this moment however, I know nothing about ISPF >>services or how to call them from C. I'll keep this in mind as a lost resort, >>if all >>else fails. > >The best I can say is that it's in the book. > >>At the moment I am contemplating creating a separate executable, DELMBR, >>that will use remove() to delete it, thereby locking the PDSE, but when it >>finishes, the PDSE is unlocked. If I use system() to call this program then >>maybe the PDSE won't be locked when DELMBR finishes and fopen() >>succeeds... hopefully. >> >Is your C program holding an ENQ SHR on the DSN? You can probe this >prior to the remove() by submitting a batch job that attempts to >allocate the PDSE with DISP=OLD. If you hold the ENQ SHR, then: > >o If system(DELMBR) runs in the same address space, it will upgrade > the ENQ to EXC and leave the PDSE locked. > >o If system(DELMBR) runs in a separate address space, it will attempt > to obtain an ENQ EXC and fail. > Any idea how to get rid of this ENQ SHR ? Thanks, Etienne ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html