I have a library which uses the Process + Thread libraries. The concurrency setting is set to "thread" in this library. Switching it to "scoop" causes a configuration error when attempting to compile.
For example: I change the concurrency setting from "<concurrency support="thread" use="thread"/>" to "<concurrency support="scoop" use="scoop"/>".
This causes the error:
Error code: VD01
Error: A library used by the current project or a parent target used by the current target cannot be used under the selected settings.
What to do: Lower your requirements or update the library or the parent target to match them.
Capability "Concurrency" of dependent target has value "Thread" insufficient for current target setting "SCOOP".
Current target
Name: test
System: framework
File: C:\Users\LJR19\OneDrive\Documents\GitHub\framework\framework.ecf
Dependent target
Name: process
System: process
File: c:\program files (x86)\eiffel software\eiffelstudio 18.11 gpl\library\process\process.ecf
I have considered that I ought not use the process library at all.
What do I use process for?
I use the process library to execute external DOS shell commands. Generally, I wait until the command is finished (sequential execution) before continuing. Sometimes, I want to do concurrent execution.
I suppose what I need to do is learn how to execute DOS shell commands without the process library and then I can just replace those bits in my "Framework" library (totally outdated and stale name, I know) and then ditch the process (plus thread) library completely!
Otherwise—my questions remain:
1. What does "support" mean?
2. What does "use" mean?
3. How do they relate and interact with each other? (what are the rules and boundaries, perhaps use cases?)
Thanks,
Larry