zoukankan      html  css  js  c++  java
  • quartc

    https://gitlab.informatik.uni-halle.de/acwuz/proto-quic-honeypot/-/tree/b25a794403c61acbf86e1e6b9e0629f0fc3c1959/src/net/quic/quartc

    // Copyright (c) 2016 The Chromium Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    
    #ifndef NET_QUIC_QUARTC_QUARTC_TASK_RUNNER_INTERFACE_H_
    #define NET_QUIC_QUARTC_QUARTC_TASK_RUNNER_INTERFACE_H_
    
    #include <stdint.h>
    
    #include <memory>
    
    namespace net {
    
    // Used by platform specific QuicAlarms. For example, WebRTC will use it to set
    // and cancel an alarm. When setting an alarm, the task runner will schedule a
    // task on rtc::Thread. When canceling an alarm, the canceler for that task will
    // be called.
    class QuartcTaskRunnerInterface {
     public:
      virtual ~QuartcTaskRunnerInterface() {}
    
      class Task {
       public:
        virtual ~Task() {}
    
        // Called when it's time to start the task.
        virtual void Run() = 0;
      };
    
      // A handler used to cancel a scheduled task. In some cases, a task cannot
      // be directly canceled with its pointer. For example, in WebRTC, the task
      // will be scheduled on rtc::Thread. When canceling a task, its pointer cannot
      // locate the scheduled task in the thread message queue. So when scheduling a
      // task, an additional handler (ScheduledTask) will be returned.
      class ScheduledTask {
       public:
        virtual ~ScheduledTask() {}
    
        // Cancels a scheduled task, meaning the task will not be run.
        virtual void Cancel() = 0;
      };
    
      // Schedules a task, which will be run after the given delay. A ScheduledTask
      // may be used to cancel the task.
      virtual std::unique_ptr<ScheduledTask> Schedule(Task* task,
                                                      uint64_t delay_ms) = 0;
    };
    
    }  // namespace net
    
    #endif  // NET_QUIC_QUARTC_QUARTC_TASK_RUNNER_INTERFACE_H
  • 相关阅读:
    Two strings CodeForces
    Dasha and Photos CodeForces
    Largest Beautiful Number CodeForces
    Timetable CodeForces
    Financiers Game CodeForces
    AC日记——整理药名 openjudge 1.7 15
    AC日记——大小写字母互换 openjudge 1.7 14
    AC日记——将字符串中的小写字母换成大写字母 openjudge 1.7 13
    AC日记——加密的病历单 openjudge 1.7 12
    AC日记——潜伏着 openjudge 1.7 11
  • 原文地址:https://www.cnblogs.com/dream397/p/14662292.html
Copyright © 2011-2022 走看看