Signal
Publicado por Andre Luiz da Silva 02/05/2004
[ Hits: 7.336 ]
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;
}
Nenhum comentário foi encontrado.
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Usando dracut e dispensando genkernel no Gentoo + LUKS + Btrfs
Curso GRÁTIS: OCS Inventory NG - Do Deploy ao Hardening com foco em Segurança da Informação!
Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
GLPI Não atualiza Inventario (1)
Instalar Linux em notebook Sony Vaio VPCEG13EB (3)
VirtualBox no Ubuntu 25.10 sem redimensionam... automatico. (1)









