PR# 19859 EiffelStudio no longer permits the creation of a project with 'Thread' concurrency ?
Problem Report Summary
Submitter: HowardThomsonSurrey
Category: EiffelStudio
Priority: Medium
Date: 2022/04/19
Class: Bug
Severity: Non-critical
Number: 19859
Release: 21.11
Confidential: No
Status: Open
Responsible:
Environment: linux
Synopsis: EiffelStudio no longer permits the creation of a project with 'Thread' concurrency ?
Description
I tried to create a new project, with Thread concurrency. The project creation dialog only provides for concurrency, or not concurrency ... If concurrency is selected, changing to Thread concurrency in the Project settings results in a VD83 error: cannot change from SCOOP to THREAD concurrency ... If concurrency is NOT selected, I also get a VD83 error: cannot change from concurrency none to Thread. In both cases I selected 'Do not compile' before changing the project settings to Thread. All routes seem to be blocked ! Is it possible to use the thread library in SCOOP mode -- the documentation does not mention the possibility AFAIK
To Reproduce
Create new Basic application project (no graphics library included) Deselect 'Compile project' Assign Location etc ... OK Select Project settings, click Target and change Concurreny to Thread Compile FAIL VD83 error
Problem Report Interactions
Hi Mark, I was able to reproduce the issue, in the meantime, you can use the following workaround to set your project with concurrency level: Thread. 1. Open EiffelStudio and Create a new project (suppose you use concurrency) a) Delete the precompiled library from the project settings [ProjectSettings-> Target -> Groups -> Precompile: base_pre] b) Exit from EiffelStudio 2. Open the project with Clean Compile a) Open the Project Settings and set Capabilities [concurrency: Thread]. b) Exit from EiffelStudio. 3. Open the project with Clean Compile a) Open Project settings and confirm that concurrency is: Thread. -- Javier
I do not want to use SCOOP because I want to split out the threads in my design into separate [multiple] processes on separate machines, and SCOOP does not permit that AFAIK Re-reading the documentation, it would seem to be implied that I can add the threads library to a 'Concurrency = None' project which I will try next ... The documentation says, explicitly, that the thread library cannot be used wit 'Concurrency = SCOOP' Is the concept of 'Concurrency = Thread' now redundant ?