- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a calling main routine that call the same procedure (which calls many others) n number of times.
After calling them all it then does some interaction between their variables, and then calls them all again.
While they are running they have no inner dependance. I was attempting to use DO CONCURRENT, but I don't think I can make make all the routines it call PURE.
So is there a way to just call a routine as a new thread (I assume there is)?
How is this done?
Do x=1, TOTAL
CALL TESTSUB(x)
End Do
(All the variables are defined in a allocatable array of type)
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As you indicated, in order for DO CONCURRENT to work (including with /Qparallel), you would require pure functions, which your description indicates is not the case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sorry if I was not clearer, but I was attempting to use DO Concurrent, but reallized it doesn't work. My question now really is just if there is a way to call a thread by hand. Since although the compiler isn't sure it is completely thread safe,I am.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

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