[Перевод] Асинхронная обработка ошибок – это сложно. Пример на CUDA
newsare.net
Или как я научился не беспокоиться из-за cudaGetLastError() и просто признал её нежелательной Любому, кто сталкивался с проектированием API, приходило[Перевод] Асинхронная обработка ошибок – это сложно. Пример на CUDA
Или как я научился не беспокоиться из-за cudaGetLastError() и просто признал её нежелательной Любому, кто сталкивался с проектированием API, приходилось мучиться над вопросом, как лучше всего распространять ошибки к вызывателям функций. Эта проблема появилась ещё раньше, чем термин «API». Даже несколько десятилетий назад (скажем, 30+) проектировщики интерфейсов умели отделять возвращаемые ошибки от прочей полезной нагрузки в рамках тех функций, которые доставляют эту информацию вызвавшему их узлу. Читать дальше →