GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

Public Slots | Public Member Functions | Private Member Functions | Private Attributes | List of all members
GpgFrontend::Thread::TaskRunner Class Reference
Inheritance diagram for GpgFrontend::Thread::TaskRunner:
Collaboration diagram for GpgFrontend::Thread::TaskRunner:

## Public Slots
void | PostTask (Task *task)
void | PostScheduleTask (Task *task, size_t seconds)

## Public Member Functions
| TaskRunner ()
| Construct a new Task Runner object. More...
virtual | ~TaskRunner () override
| Destroy the Task Runner object.
void | run () override

## Private Member Functions
void | unregister_finished_task (std::string)

## Private Attributes
std::queue< Task * > | tasks
| The task queue.
std::map< std::string, Task * > | pending_tasks_
| The pending tasks.
std::mutex | tasks_mutex_
| The task queue mutex.
QThreadPool | thread_pool_ {this}
| run non-sequency task

## Constructor & Destructor Documentation

## ◆ TaskRunner()

GpgFrontend::Thread::TaskRunner::TaskRunner | ( |  | ) |
| default

Construct a new Task Runner object.

Copyright (C) 2021 Saturneric

This file is part of GpgFrontend.

GpgFrontend is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GpgFrontend is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with GpgFrontend. If not, see https://www.gnu.org/licenses/.

The initial version of the source code is inherited from the gpg4usb project, which is under GPL-3.0-or-later.

The source code version of this software was modified and released by Saturnericeric@.nosp@m.bktu.nosp@m.s.com eric@.nosp@m.bktu.nosp@m.s.com starting on May 12, 2021.

## Member Function Documentation

## ◆ PostScheduleTask

void GpgFrontend::Thread::TaskRunner::PostScheduleTask | ( | Task * | task,
|  | size_t | seconds
| ) |  |
| slot

Parameters

  task |
  seconds |

## ◆ PostTask

void GpgFrontend::Thread::TaskRunner::PostTask | ( | Task * | task | ) |
| slot

Parameters

  task |

References GpgFrontend::Thread::Task::GetFullID(), tasks, and tasks_mutex_.

The documentation for this class was generated from the following files:

- src/core/thread/TaskRunner.h
- src/core/thread/TaskRunner.cpp