From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: Victor Porton Newsgroups: comp.lang.ada Subject: Feature suggestion: different task schedules Date: Thu, 13 Jul 2017 23:20:41 +0300 Organization: Aioe.org NNTP Server Message-ID: NNTP-Posting-Host: H5rnIG5HjBZt1DRp9NYOMQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7Bit X-Complaints-To: abuse@aioe.org User-Agent: KNode/4.14.10 X-Notice: Filtered by postfilter v. 0.8.2 Xref: news.eternal-september.org comp.lang.ada:47406 Date: 2017-07-13T23:20:41+03:00 List-Id: I propose for Ada 2020 to add the following pragmas (and corresponding aspects) for tasks and task types: pragma Schedule=>Thread; the regular task. pragma Schedule=>Manual; the task runs only when a protected entry is called and stops at the next accept statement. This is usually the fastest mode in the case of one-core system. pragma Schedule=>Sometimes; the task run in either of two above modes (with tasks of a task type not necessarily scheduled in the same way (some may be Thread and some Manual)). The schedule mode may be chosen dependently on free CPU cores availability to make it the fastest. pragma Schedule=>Dynamic; a task with this schedule may switch between Thread and Manual mode at any moment of time. This is useful to use CPU cores effectively. What do you think? -- Victor Porton - http://portonvictor.org