comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Feature suggestion: different task schedules
Date: Fri, 14 Jul 2017 10:37:50 +0200
Date: 2017-07-14T10:37:50+02:00	[thread overview]
Message-ID: <ok9vsu$unj$1@gioia.aioe.org> (raw)
In-Reply-To: 1500011977.2481.9.camel@obry.net

On 14/07/2017 07:59, Pascal Obry wrote:

>> 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.
> 
> I don't see the point. Call from the task the PO with a barrier. The
> task will be sleeping until waken-up by an event on this PO. Isn't this
> is exactly what you looking for?

The point, I presume, is to have co-routines. For that purpose the 
object used to yield processor is not even protected. All parties are 
synchronized already.

As a use-case consider a producer-consumer pair. Both would be 
pseudo-tasks backed by single thread of control (proper task).

> Don't assume you have to do optimization yourself. Most of the time the
> compiler and runtime does this for you and using the most efficient
> syscall on the target.

This is not the case for co-routines where transition of control is 
virtual, only there to use a task abstraction for decomposition of an 
algorithm that itself is strictly non-concurrent.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2017-07-14  8:37 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-13 20:20 Feature suggestion: different task schedules Victor Porton
2017-07-13 21:58 ` Victor Porton
2017-07-13 22:11   ` Victor Porton
2017-07-14  5:59 ` Pascal Obry
2017-07-14  8:37   ` Dmitry A. Kazakov [this message]
2017-07-15 11:30 ` Victor Porton
2017-07-15 19:23   ` Niklas Holsti
2017-07-15 20:01   ` Simon Wright
2017-07-16 18:48   ` Jeffrey R. Carter
2017-07-16 19:05     ` Dmitry A. Kazakov
2017-07-16 20:25       ` Simon Wright
2017-07-18  0:09     ` Randy Brukardt
2017-07-18  7:14       ` Dmitry A. Kazakov
2017-07-18 15:28         ` Shark8
2017-07-18 16:06           ` Dmitry A. Kazakov
2017-07-18 20:09         ` Randy Brukardt
2017-07-19  7:24           ` Dmitry A. Kazakov
2017-07-23 12:31             ` Victor Porton
2017-07-23 14:19               ` Egil H H
2017-07-23 20:03                 ` Victor Porton
2017-07-23 20:05                 ` Dennis Lee Bieber
2017-07-23 18:47               ` Dmitry A. Kazakov
2017-07-24 15:26               ` Alejandro R. Mosteo
2017-07-24 19:56                 ` Dmitry A. Kazakov
  -- strict thread matches above, loose matches on Subject: below --
2017-07-18  0:45 Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox