Opened 4 years ago

#900 new request

Job creating jobs

Reported by: Peter Owned by: Jari Häkkinen
Priority: major Milestone: yat 0.x+
Component: utility Version: trunk
Keywords: Cc:

Description

In ticket #800 (Scheduler) there is a discussion on the use case such as when making the function below multi-threaded:

double brown(int n, int x)
{
  if (n)
    return 0.5*(brown(n-1, x-1) + brown(n-1, x+1));

  if (x>0)
    return 1;
  if (x<0)
    return 0;
  return 0.5
}

One would like to let the job submit two new jobs and then hold until these two jobs have returned and in the meantime this job should not block a whole thread. Either by making the number of active workers more dynamic in the scheduler or via some clever pattern.

I open a separate ticket for this, so it is not forgotten (as #800 is closed), as I keep coming back to this use case.

Change History (0)

Note: See TracTickets for help on using tickets.