[devel] Просьба потестировать
Michael Pozhidaev
=?iso-8859-1?q?msp_=CE=C1_altlinux=2Eru?=
Вс Мар 21 12:03:10 MSK 2004
Andrey Rahmatullin пишет:
> On Sun, Mar 21, 2004 at 01:20:26PM +0600, Michael Pozhidaev wrote:
>> количество раз. Если у кого-нибудь есть время и возможность, помогите
>> - запустите небольшой экспериментальный файл в своей среде.
> Где файл? ;)
Предыдущее письмо с файлом в рассылку не прошло. Посылаю просто так.
Программа ждёт в качестве первого параметра запуска какой-нибудь
wav-файл, длительность которого больше хотя бы 1 секунды. На
консоль программа выводит количество успешных запуском процесса
для воспроизведения звука. У меня таких запусков не больше 120.
// BEGIN
#include<sys/types.h>
#include<unistd.h>
#include<sys/wait.h>
#include<stdlib.h>
#include<stdio.h>
pid_t mp;
void play(char *name)
{
mp = fork();
if (mp == 0)
{
pid_t pp;
setpgrp();
pp = fork();
if (pp == 0)
{
execlp("play", "play", name, NULL);
}
waitpid(pp, NULL, 0);
exit(0);
}
}
void stop()
{
pid_t p;
killpg(mp, SIGKILL);
while((p = waitpid(-1*mp, NULL, WNOHANG))>0);
}
int main(int argc, char *argv[])
{
int k = 1;
play(argv[1]);
while(1)
{
printf("%u\n", k++);
sleep(1);
stop();
play(argv[1]);
}
return (0);
}
// END
--
Best wishes. Michael Pozhidaev. E-mail: msp на altlinux.ru.
Tomsk state university.
Computer science department. (http://www.inf.tsu.ru)
Подробная информация о списке рассылки Devel