<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Hi all,</p>
    <p>Is there a clean way to change a scheduler's event frequency on
      the fly?</p>
    <p>Browsing the API, I see two possibilities:</p>
    <ul>
      <li>set it when the scheduler is first created (using
        ABT_sched_basic_freq?)</li>
      <li>set it dynamically by manipulating the ABT_sched_get_data()
        pointer, but this seems especially dangerous since the sched
        data struct definition isn't public (i.e. it could cause memory
        corruption if the internal struct def changed)<br>
      </li>
    </ul>
    <p>For some context (in case there is a different way to go about
      this entirely), I'm trying to figure out how to get
      ABT_info_trigger_print_all_thread_stacks() to print information
      more quickly, which IIUC relies on getting the active schedulers
      to call get_events() sooner.</p>
    <p>I'm happy to add some explicit ABT_thread_yield() shortly after
      the ABT_info_trigger_print_all_thread_stacks() to at least get the
      calling ES to execute it's scheduler loop immediately, but I think
      that won't matter much if it doesn't trip the frequency counter
      when I do it.</p>
    <p>Without this (at least with the _wait scheduler and threads that
      are occasionally tied up in system calls) I think the stack dump
      is likely to trigger too late to display what I'm hoping to
      capture when I call it.  The first example I tried appeared to
      essentially defer dump until shutdown.<br>
    </p>
    <p>thanks!</p>
    <p>-Phil<br>
    </p>
  </body>
</html>