<feed xmlns='http://www.w3.org/2005/Atom'>
<title>eglantine-cirakg/src/common/threadsafe_queue.h, branch nx2</title>
<subtitle>Mirror of github.com/cira0100/Eglantine-public nx2, a fork of Djihads80/Eglantine.</subtitle>
<id>https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2</id>
<link rel='self' href='https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/'/>
<updated>2025-10-01T04:59:35+00:00</updated>
<entry>
<title>[common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351)</title>
<updated>2025-10-01T04:59:35+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2025-10-01T04:59:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=dfe10bc85196d1e7812b6cb775767cf1e072c20f'/>
<id>urn:sha1:dfe10bc85196d1e7812b6cb775767cf1e072c20f</id>
<content type='text'>
Needs test on our CI targets to see I didn't miss anything. Worried about android.

Signed-off-by: lizzie &lt;lizzie@eden-emu.dev&gt;

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/351
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
Co-authored-by: lizzie &lt;lizzie@eden-emu.dev&gt;
Co-committed-by: lizzie &lt;lizzie@eden-emu.dev&gt;
</content>
</entry>
<entry>
<title>general: fix compile for Apple Clang</title>
<updated>2022-11-23T03:22:28+00:00</updated>
<author>
<name>Liam</name>
<email>byteslice@airmail.cc</email>
</author>
<published>2022-11-21T16:31:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=5a712bb51a39628b3a484445e16065ebe621ed90'/>
<id>urn:sha1:5a712bb51a39628b3a484445e16065ebe621ed90</id>
<content type='text'>
</content>
</entry>
<entry>
<title>common: move forwarded value into SPSCQueue</title>
<updated>2022-07-29T19:41:57+00:00</updated>
<author>
<name>Liam</name>
<email>byteslice@airmail.cc</email>
</author>
<published>2022-07-28T23:47:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=721189ef2e98b19a5543695e4c84f36a15377ba5'/>
<id>urn:sha1:721189ef2e98b19a5543695e4c84f36a15377ba5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: add missing SPDX tags</title>
<updated>2022-04-28T16:24:11+00:00</updated>
<author>
<name>Andrea Pappacoda</name>
<email>andrea@pappacoda.it</email>
</author>
<published>2022-04-28T16:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=b2eb10382941bef0914f4a0a4685b9033440aa9f'/>
<id>urn:sha1:b2eb10382941bef0914f4a0a4685b9033440aa9f</id>
<content type='text'>
Follow-up to 2b87305d319f0bd04da36fb96314934f37b12637
</content>
</entry>
<entry>
<title>common: Replace lock_guard with scoped_lock</title>
<updated>2022-04-07T18:30:55+00:00</updated>
<author>
<name>Merry</name>
<email>git@mary.rs</email>
</author>
<published>2022-04-07T18:30:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=ae642bbff2d5b5a8126eff156c01892a6aa1aa20'/>
<id>urn:sha1:ae642bbff2d5b5a8126eff156c01892a6aa1aa20</id>
<content type='text'>
</content>
</entry>
<entry>
<title>threadsafe_queue: Add std::stop_token overload to PopWait</title>
<updated>2021-09-16T00:49:07+00:00</updated>
<author>
<name>ameerj</name>
<email>52414509+ameerj@users.noreply.github.com</email>
</author>
<published>2021-09-16T00:18:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=4cad11c5f33a394a06e3d1544643f4136824a33f'/>
<id>urn:sha1:4cad11c5f33a394a06e3d1544643f4136824a33f</id>
<content type='text'>
Useful for jthreads which make use of the threadsafe queues.
</content>
</entry>
<entry>
<title>threadsafe_queue: Fix deadlock</title>
<updated>2021-08-13T19:22:51+00:00</updated>
<author>
<name>yzct12345</name>
<email>87620833+yzct12345@users.noreply.github.com</email>
</author>
<published>2021-08-13T19:22:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=156754e476aa7953008998d46ad0f35c0e5059ae'/>
<id>urn:sha1:156754e476aa7953008998d46ad0f35c0e5059ae</id>
<content type='text'>
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader.

This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples.</content>
</entry>
<entry>
<title>common/threadsafe_queue: Provide Wait() method.</title>
<updated>2021-04-07T20:38:52+00:00</updated>
<author>
<name>Markus Wick</name>
<email>markus@selfnet.de</email>
</author>
<published>2021-04-06T18:30:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=b529aba9cef9d0db1990c637ae31cee2c9bddebd'/>
<id>urn:sha1:b529aba9cef9d0db1990c637ae31cee2c9bddebd</id>
<content type='text'>
It shall block until there is something to consume in the queue.

And use it for the GPU emulation instead of the spin loop.
This is only in booting the emulator, however in BOTW this is the case for about 1 second.
</content>
</entry>
<entry>
<title>common: Make use of [[nodiscard]] where applicable</title>
<updated>2020-08-15T21:17:52+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2020-08-14T13:38:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=2ef7815422f4584b334ff196efd72e40ad03e094'/>
<id>urn:sha1:2ef7815422f4584b334ff196efd72e40ad03e094</id>
<content type='text'>
Now that clang-format makes [[nodiscard]] attributes format sensibly, we
can apply them to several functions within the common library to allow
the compiler to complain about any misuses of the functions.
</content>
</entry>
<entry>
<title>common: SPSCQueue: Notify after incrementing queue size.</title>
<updated>2019-12-17T01:39:53+00:00</updated>
<author>
<name>bunnei</name>
<email>bunneidev@gmail.com</email>
</author>
<published>2019-12-17T01:39:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=60fa40fc1648c80a9c44fa1c252d9df72aaae438'/>
<id>urn:sha1:60fa40fc1648c80a9c44fa1c252d9df72aaae438</id>
<content type='text'>
</content>
</entry>
</feed>
