Signal
Publicado por Andre Luiz da Silva 02/05/2004
[ Hits: 7.207 ]
Homepage: http://localhost
Um pequeno fonte demonstrando algumas coisas interessantes usando signals.
/* Author: Andre Luiz da Silva * Date : 21/04/2004 */ #include <stdio.h> /* standart C functions */ #include <signal.h> /* signal() */ #include <unistd.h> /* sleep() */ #define DEFAULT_SPEED 5 static unsigned int speed = DEFAULT_SPEED; int count = 0; void aumenta_speed (int signal_num) { ++speed; signal (SIGUSR1, aumenta_speed); /* Associa novamente o tratador de signal, pq em sistemas Linux, quando * um programa recebe um signal ele chama o tratador para aquele signal e * automaticamente associa aquele signal para o tratador default */ } void diminui_speed (int signal_num) { --speed; signal (SIGUSR2, diminui_speed); } void zera_contador (int signal_num) { count = 0; signal (SIGHUP, zera_contador); } void default_speed (int signal_num) { speed = DEFAULT_SPEED; signal (SIGTERM, default_speed); } int main (int argc, char **argv) { signal (SIGUSR1, aumenta_speed); signal (SIGUSR2, diminui_speed); signal (SIGHUP, zera_contador); signal (SIGTERM, default_speed); for (; ;++count) { sleep (speed); printf ("%d \n", count); } return 0; }
Simples gerador de números primos
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Unbuntu não atualiza o firmware [RESOLVIDO] (2)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (0)
Dúvidas sobre a originalidade de conteúdos online (10)
Erro de interface de Rede no Virt Manager dentro Debian 13 KDE (12)