- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to build a quickwin application. It's pretty simple: just a menu for a file selection and a menu for setting some options (it's to print files with fortran carriage control, using the windows printing system).
In one of the examples, there is a routine named "YIELDQQ" which is called in the loop which is used to permit the menus to be used.
First, what does this routine do?
Second, when I added it to my code, I got runtime errors stating I was trying to use QuickWin from a console application. I removed the call to yieldqq, and the problem went away. Why? I found the interface in the IFQWIN.F90 file, so it would seem to be a QuickWin routine.
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Interesting...
YIELDQQ is an obsolete PowerStation 1 routine, which is not documented. But it should still work. Its purpose is to notify Windows that it's ok to resume another thread if it's waiting - judicious use of this can improve responsiveness in some applications. Calling SLEEPQQ with a zero interval does the same thing.
In CVF, YIELDQQ was provided in both the QuickWin and console libraries, but in Intel Visual Fortran, it's only in the console library.
It should not be defined in module IFQWIN - it should be in IFCORE instead, and should be in both libraries. I'll report this to the library folks.
You can take out the YIELDQQ call or call SLEEPQQ(0)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks,
CALL SLEEPQQ(0) worked perfectly (now, to get the rest of the application to do the same....:smileysad:)

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page