| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > signal |
| Автор: Elyad 13.10.2006, 11:59 |
| Пишу прогу, в которой надо по истечении недели вызывать функцию, которая шлет широковещательные пакеты. Но проблема в том, что в функцию signal нельзя поместить обработчик сигнала с несколькими разными аргументами, т.к. по определению она содержит только один целочисл. аргумент. Мне же надо в функцию записать несколько разных аргументов. Что же делать? |
| Автор: Elyad 13.10.2006, 14:01 |
| Ну неужели никто не знает как сделать так, чтобы при поступлении сигнала от ядра процесс вызывал функцию имеющую больше 1 аргумента. Неужели перевелись настоящие программеры!!! |
| Автор: Romikgy 13.10.2006, 14:17 |
| Elyad, 1. для какой системы пишешь( ось какая?) 2. .... будет после ответа ,( который я уже подразумеваю, но подожду ответа) |
| Автор: Elyad 13.10.2006, 14:24 |
| пишу под Unix |
| Автор: Romikgy 13.10.2006, 15:19 |
что твоя тема делает в разделе Windows API ????? |
| Автор: Любитель 15.10.2006, 23:24 |
| Пишем на сях (в смысле не плюсы)? Тогда - тупой метод: 1. Создаём структуру в неё записываем все данные. 2. В signal передаём указатель на структуру, приведённый к целочисленному типу. 3. В обработчике делаем обратное преобразование. Понятно, что о типосейфити говорить не приходится... А жаль |
| Автор: Elyad 16.10.2006, 11:21 |
| По-моему я нашел самое оптимальное решение!!! Надо просто необходимые параметры описать как внешние - вот и все дела. И функция - обработчик просто вызывают нужную мне функцию со всеми параметрами, т.к. все они известны и сохраняют свое значение. |