Signal
Publicado por Andre Luiz da Silva 02/05/2004
[ Hits: 7.350 ]
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;
}
Determinando a posicão de ocorrencia de uma string em outra
ArkaPoing (arkanoid+pingpoing hehe)
Nenhum comentário foi encontrado.
Como Ativar a Aceleração por GPU (ROCm) no Ollama para AMD Navi 10 (RX 5700 XT / 5600) no Gentoo
Como criar um make.conf no Gentoo (para iniciantes)
Como instalar o Open WebUI para Ollama no Gentoo (com systemd)
INSTALAR (e jogar) COUNTER STRIKE 1.6 (install cs 1.6) NO LINUX
Removendo o bloqueio por erros de senha no Gentoo (systemd)
Papel de Parede Animado no KDE Plasma 6 (Com dicas para Gentoo)
Homebrew: o gerenciador de pacotes que faltava para o Linux!
Removendo a trava de versão do Project Brutality para GZDoom/UZDoom
Acelere a compilação no Gentoo com distcc (guia para Systemd)









