Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2014, 17:47   #1
ubertrader
Новичок
Джуниор
 
Регистрация: 29.04.2014
Сообщений: 0
По умолчанию Алгоритм IPC на основе Shared Memory между C++ и C#

Необходимо написать 2 алгоритма чтения-записи в Shared memory файл ( OpenFileMapping() ). Должно быть 2 работающих демо приложения (просто консольный режим, для демонстрации работы, важен сам алгоритм, он будет интегрирован в другой проект). Серверная часть, на чистом C++ Win API без MFC и STL и пр: только пишет в Shared Mem, клиентская часть .Net C# (NetFramework <= 3.5) только читает из Shared Mem.

Алгоритм действия C++ сервера:
*Инициализация*
- Создаем список Shared Mem файлов в них храним Handles

*Работа*
Необходима возможность записи нескольких имен файлов, имя shared mem файла принимается как аргумент.
- Открыли Mutex ( имя Mutex - напр "mutex_"+SharedMemFileName)
- Создали новый файл shared mem (закрыв предыдущий HANDLE если есть)
- добавили Handle в список созданный при инициализации приложения
- Записали структуру-заголовок, записали 10 шт структур-данных
- Релизнули Mutex

*Завершение*
- Закрыли все HANDLE открытых shared mem файлов

-----------------
Алгоритм действия C# клиента:

*Работа*
Внимание! Нужен быстрый unsafe код!

Получили в качестве аргумента имя файла Shared Mem.
- Открыли Mutex ( имя Mutex - напр "mutex_"+SharedMemFileName)
- Прочитали структуру-заголовок (вычислили количество записей)
- Прочитали все записи в цикле for (вывели значения в console)
- Релизнули Mutex

----------------
Алгоритмы должны содержать коментарии, а также в каждом алгоритме должны быть проверки на ошибки try...catch и т.п.

Необходимые структуры для C++ и C# вышлю по почте при заинтересованности структуры 100% совместимы.

В итоге должно получиться 2 консольных приложения, одно из которых пишет 10 записей с рандомным содержанием в Shared Mem, другое их читает и воспроизводит. Поведение программ должно быть максимально подробно отлоггировано в консоли.

Обязательные требования:
Знание Win Api, IPC, Mutex, unsafe code и Pinvoke для C#.

Сроки 2дня, бюджет 1000руб (можно провести оплату через один из сервисов фрилансеров).

Прошу задавать вопросы по email: angeld () inbox.ru
ubertrader вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IPC в Windows ShadowMaster C++ Builder 6 27.07.2012 22:36
Load exe into memory and run it from memory artush1984 Win Api 10 06.02.2012 18:43
Shared DLL Alex Cones Помощь студентам 2 17.11.2010 15:23
Shared файл. Долго работает. Jarik Microsoft Office Excel 3 21.09.2009 12:29
алгоритм нахождения наилучшего маршрута между двумя заданными городами Uli9 Общие вопросы Delphi 28 18.11.2008 16:59