63 lines
1.3 KiB
Plaintext

void thread1(){
ce nisi dobil error{
cv = odpri cev2 WRONLY
}ce si dobil error{
cv = odpri cev1 WRONLY
}
while(running){
preberi sporocilo iz terminala;
ce je sporocilo enako ""{
poslji v cv ("n");
zaustavi thread1(brak)
!!!uporabi pthread_cancel() da ustavis thread2!!!
}ce ne{
poslji v cv (sporocilo);
}
}
zapri cv;
}
void thread2(){
ce nisi dobil error{
cv = odpri cev1 RDONLY
}ce si dobil error{
cv = odpri cev2 RDONLY
}
while(running){
preberi iz cevi (cv) sporocilo;
izpisi na terminal sporocilo;
ce je sporocilo enako "n"{
zaustavi thread2(brak)
!!!uporabi pthread_cancel() da ustavis thread1!!!
}
}
zapri cv;
}
main(){
char cev1 = "./" + argv[1] + "1";
char cev2 = "./" + argv[1] + "2";
ustvari cev1;
ustvari cev2;
ce dobis error da cev obstaja si zapomni;
ustvari thread 1 in 2;
pocakaj da se thred 1 in 2 zakljuci;
unlink cev 1 in 2;
}
za prenos podatkov med cevmi in thredi je meni bilo najlazje uporabljati globalne premenljivke