summaryrefslogtreecommitdiff
path: root/src/common/thread.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-06-22general: remove atomic signal and waitGravatar Liam1-1/+1
2022-12-06general: improve handling of system startup failureGravatar Liam1-4/+7
2022-08-02Make coretiming waiting more accurateGravatar Kelebek11-0/+4
2022-06-28Core/Common: Corrections to core timing and add critical priority.Gravatar Fernando Sahmkow1-0/+1
2022-04-28chore: add missing SPDX tagsGravatar Andrea Pappacoda1-3/+3
Follow-up to 99ceb03a1cfcf35968cab589ea188a8c406cda52
2022-04-07common: Replace lock_guard with scoped_lockGravatar Merry1-1/+1
2020-08-26common/thread: Fix data race in is_setGravatar ReinUsesLisp1-4/+5
As report by tsan, Event::Set can write is_set while WaitFor and friends are reading from it. To address this issue, make is_set an atomic.
2020-06-27General: Tune the priority of main emulation threads so they have higher ↵Gravatar Fernando Sahmkow1-0/+9
priority than less important helper threads.
2020-06-18Tests: Add base tests to host timingGravatar Fernando Sahmkow1-2/+2
2020-01-23Address second part of review commentsGravatar FearlessTobi1-1/+1
2020-01-23Input: UDP Client to provide motion and touch controlsGravatar fearlessTobi1-0/+9
An implementation of the cemuhook motion/touch protocol, this adds the ability for users to connect several different devices to citra to send direct motion and touch data to citra. Co-Authored-By: jroweboy <jroweboy@gmail.com>
2019-04-01general: Use deducation guides for std::lock_guard and std::unique_lockGravatar Lioncash1-5/+5
Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
2019-03-29common/thread: Remove unused functionsGravatar Lioncash1-4/+0
Many of these functions are carried over from Dolphin (where they aren't used anymore). Given these have no use (and we really shouldn't be screwing around with OS-specific thread scheduler handling from the emulator, these can be removed. The function for setting the thread name is left, however, since it can have debugging utility usages.
2018-11-21common/thread: Make Barrier's 'count' member non-constGravatar Lioncash1-1/+1
While admirable as a means to ensure immutability, this has the unfortunate downside of making the class non-movable. std::move cannot actually perform a move operation if the provided operand has const data members (std::move acts as an operation to "slide" resources out of an object instance). Given Barrier contains move-only types such as std::mutex, this can lead to confusing error messages if an object ever contained a Barrier instance and said object was attempted to be moved.
2018-11-21common/thread: Initialize class member variables where applicableGravatar Lioncash1-6/+4
Simplifies the constructor interfaces for Barrier and Event classes.
2018-11-21common/thread: Group non-member functions togetherGravatar Lioncash1-3/+2
Keeps the non-member interface in one spot instead of split into two places, making it nicer to locate functions.
2018-11-21common/thread: Remove SleepCurrentThread()Gravatar Lioncash1-1/+0
This is also unused and superceded by standard functionality. The standard library provides std::this_thread::sleep_for(), which provides a much more flexible interface, as different time units can be used with it.
2018-11-21common/thread: Remove unused CurrentThreadId()Gravatar Lioncash1-2/+0
This is an old function that's no longer necessary. C++11 introduced proper threading support to the language and a thread ID can be retrieved via std::this_thread::get_id() if it's ever needed.
2018-09-22common/thread: remove YieldCPU()Gravatar Weiyi Wang1-8/+0
simply use the standard library yield()
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"Gravatar fearlessTobi1-5/+5
2018-04-19common/thread: Remove unnecessary feature checking for thread_localGravatar Lioncash1-19/+0
Every compiler we require already supports it.
2016-12-26Common::Event: add WaitUntilGravatar wwylele1-0/+10
2016-09-21Remove empty newlines in #include blocks.Gravatar Emmanuel Gil Peyrot1-1/+0
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-18Manually tweak source formatting and then re-run clang-formatGravatar Yuri Kunde Schlesner1-4/+2
2016-09-18Sources: Run clang-format on everything.Gravatar Emmanuel Gil Peyrot1-18/+22
2016-04-14Thread: Make Barrier reusableGravatar MerryMage1-5/+5
2016-04-14common/thread: Correct code styleGravatar MerryMage1-21/+19
2015-06-28Common: Cleanup thread includes.Gravatar Emmanuel Gil Peyrot1-14/+2
2015-05-07Common: Remove common.hGravatar Yuri Kunde Schlesner1-1/+0
2015-04-16Common: thread.h cleanupsGravatar Yuri Kunde Schlesner1-65/+16
The helper classes are rendered obsolete by C++11 lambdas. Also made formatting conform to our code style.
2015-03-01Add profiling infrastructure and widgetGravatar Yuri Kunde Schlesner1-0/+19
2014-12-20License changeGravatar purpasmart961-2/+2
2014-12-13New logging systemGravatar Yuri Kunde Schlesner1-0/+1
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP ↵Gravatar Emmanuel Gil Peyrot1-4/+4
or generated
2014-11-18Remove extraneous semicolonsGravatar Lioncash1-1/+1
2014-09-07Removed common/std_xyz, instead using the std headerGravatar archshift1-4/+3
2014-08-17Common: Move remaining C header includes over to their C++ equivalentGravatar Lioncash1-2/+2
2014-08-17Common: Move header guards over to pragma onceGravatar Lioncash1-4/+1
Also replaced C headers with the C++ equivalent ones
2014-04-08fixed project includes to use new directory structureGravatar bunnei1-4/+4
2014-04-08got rid of 'src' folders in each sub-projectGravatar bunnei1-0/+0
2014-04-01convert tabs to spacesGravatar bunnei1-96/+96
2013-09-04replaced common code with dolphin commonGravatar ShizZy1-0/+156