예제 #1
0
void
connect_request::wakeup(posix_demuxer& demux)
{
  //fprintf(stderr, "connect_request::wakeup\n");

  // fprintf(stderr,"connect woke up\n");
  connect_control_block::wakeup(demux);

  // felix thread can pick out error itself.
  notify_finished();
}
예제 #2
0
/**
 * \brief Update the base_tweener of a given amount of time.
 * \param dt The duration of the update in time units since the last call.
 * \return The amount of extra time in dt after the end of the update.
 */
double claw::tween::base_tweener::update( double dt )
{
    CLAW_PRECOND( dt >= 0 );

    const double result = do_update(dt);

    if ( is_finished() )
        notify_finished();

    CLAW_POSTCOND( result <= dt );
    CLAW_POSTCOND( result >= 0 );

    return result;
} // base_tweener::update()
예제 #3
0
void
waio_base::iocp_op_finished( DWORD nbytes, ULONG_PTR udat,
  LPOVERLAPPED olp, int err)
{
  // fprintf(stderr,"general wakeup thing - rescheduling\n");
  //fprintf(stderr,"this: %p, q: %p, f: %p, err: %i\n", this, q, f, err);

  // this tells us when things went wrong (store it)
  if(NO_ERROR != err)
    fprintf(stderr,"catchall wakeup got error: %i (should store it)\n", err);

  success = (NO_ERROR == err);  // this works pretty well
  notify_finished();
}
예제 #4
0
void
accept_request::wakeup(posix_demuxer& demux)
{
  // does the leg work.
  accept_control_block::wakeup(demux);

  if(accepted == -1)
  {
    // I don't know if this is a good idea...
    fprintf(stderr, "accept request failed (%i), retrying...\n",
      socket_err);
    // didn't get it - go back to sleep
    if(start(demux) == -1)
      fprintf(stderr, "failed again... probably was a bad idea\n");
    return;
  }

  notify_finished();
}
예제 #5
0
void
flxfileio_request::finished() { notify_finished(); }
예제 #6
0
void sleep_request::fire() {
  //fprintf (stderr,"FIRE req=%p\n",this);
  notify_finished();
}