задачка

топ 100 блогов ru_programming12.09.2010 а вот такая задачка, кому делать нечего на выходных.

дан non-thread-safe класс UnsafeQueue с методами, конечно, Enqueue и Dequeue. ёмкость очереди конечна; есть метод bool IsFull(). ну и bool IsEmpty(), заодно.

надо написать (на сишарпе) thread-safe wrapper SafeQueue с методами тоже Enqueue и Dequeue, причём так, чтобы они блокировались, когда не могут - то есть, Enqueue чтобы блокировалась, когда IsFull, a Dequeue - когда IsEmpty.

примитивы синхронизации можно использовать любые дотнетовские. предположим для простоты, что мы пишем под 3.5.

для шары кода можно использовать, например, http://pastebin.com, или на ваше усмотрение.

помните, что краткость - сестра таланта.

Оставить комментарий

Архив записей в блогах:
Мы тут все, в основном, давно не первой свежести, как бы нам не хотелось думать иначе. А какой вы себе представляете вашу старость? В каком возрасте думаете выйти на пенсию? И чем на ней заниматься? А где жить? А внуков нянчить будете? ...
Кремль прямо причастен к сценарию попытки убийства бывшего премьер-министра Черногории Мило Джукановича с целью остановить вступление страны в НАТО. По словам источников, запланированный на 16 октября прошлого года переворот в Черногории был одним из наиболее вопиющих примеров все ...
Сами знаете какой сегодня день. Но поздравлять никого не собираюсь. Позавчера забежал я в какой-то продуктовый магазин. А там продают уже куличи да яйца. Но самое интересное, это было объявление в том же магазине. К сожалению сфотографировать ...
Понадобилось мне тут некоторое количество автомобильного крепежа отмыть от грязищи, масла и прочей ржавчины. Погуглив интернет пришел к выводу, что лучше всего этот крепеж банально замочить в керосине. Отсюда вопрос - где у нас можно спокойно ...
Вот что делать, если совершенно утрачиваешь вкус к жизни?Я имею в виду - когда ...