Mutex {
awaiter Lock();
Guard<awaiter> -> unique_lock<awaiter> Gaurd();
}
auto guard = co_await mtx.Guard(); -> mtx.Unlock();
void = co_await mtx.Lock();
void = co_await mtx/guard.Unlock(IExecutor& e = CurrentThreadPool());
enum class AggregatorType : uint64_t { | |
kAny = 0, // At least few functions needed, so runtime detection | |
// This is single operation case. | |
// Now only single exception: average(kCount + kSum). | |
// It is assumed that if we need one function, we instantiate it, if several then kAny. | |
// But if for some reason we decide to optimize a specific case (for example Min + Max) this is also possible! | |
kCount = 1 << 0, | |
kMin = 1 << 1, | |
kMax = 1 << 2, | |
kSum = 1 << 3, |
bool await_ready(); | |
... await_suspend(handle); | |
V await_resume(); | |
Channel<V, 1> ch; | |
ch.~Channel() -- while (...) {} | |
V value = co_await ch.Recv(); |
#include <exe/tp/thread_pool.hpp> | |
#include <exe/fibers/core/api.hpp> | |
#include <exe/fibers/sync/mutex.hpp> | |
#include <exe/fibers/sync/wait_group.hpp> | |
#include <wheels/support/stop_watch.hpp> | |
#include <iostream> | |
#include <chrono> | |
using namespace exe; |
Курс будет с акцентом на Linux. Да мы возможно обсудим некоторые нюансы macOS/Windows, и вероятно часть задач можно будет сдать под ними.
Но в целом стоит понимать, что поддержка не Linux-а как платформы будет минимальна.
Можно воспользоваться WSL, также будет поддержка docker образа и сдачи домашек в нем.
Руководитель: Алексей Кладов
Презентации из описания проекта
Написать библиотеку строки для языка Rust, интерфейс которой аналогичен std::string.
Первое что стоит понимать, у Skia апи, которое соотвествует скорее софтварной растеризации, а бекенд под OpenGL, Vulkan, etc появился позже. Хотя возможно правильнее называть это path renderer. Поэтому если вам не нужны например кривые безье, то кажется можно меньшеми усилиями и возможно с лучшим первом добиться аналогичного результа.
Нас интересует метод drawPath, а именно как рисуется Round/Miter/Bevel соединения ребер. Они создают треугольники в тесселяционном шейдере: Из явных плюсов создания треугольников на лету, меньшее потребление памяти, загруженность шины, из минусов, большее количество вычислений, загрузка гпу.
На самом деле просто пихаю ссылки, которые мне чем то понравились при просмотре и которые я хочу быстро найти, если нужно будет что-то вспомнить
В целом большинство материала, кроме книг, на русском, потому что на нем я лучше понимаю ¯\_(ツ)_/¯
А ну и стоит учитывать, что большинство видео я смотрю на х2, поэтому если у вас это не так, то вам может что-то не понравится