There are 2 methods to create unique names for programs running at the same time in two or more sessions:
1. Using a directory name
/* example code to show how to use a directory name to get a unique */ /* name */ uniqueName = "" do i = 1 to 999 until rc = 0 uniqueName = "C:\TEMP\unique." || i /* try to create a directory */ /* OS/2 checks that only ONE process */ /* can create the directory! */ "@md " uniqueName "1>NUL 2>NUL" end /* do i = 1 to 999 */ if rc == 0 then say "The unique name is" uniqueName else say "No unique name found!" /* do something */ /* ... */ /* free the name */ "@rd " uniqueName "1>NUL 2>NUL" exit 0
2. Using the name of a QUEUE
/* example code to show how to use a queue name to get a unique */ /* name */ /* create a queue with a unique name */ uniqueName = rxqueue( "create" ) say "The unique name is" uniqueName /* do something */ /* ... */ /* free the name */ call rxqueue "Delete", uniqueName exit 0