Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Mreze, zadaca
Idite na Prethodno  1, 2
Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji siročići (oni koji nemaju svoj podforum) -> Računarski kolegiji
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
kaj
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 11. 2009. (21:02:20)
Postovi: (B8)16
Sarma = la pohva - posuda
= 6 - 2

PostPostano: 14:02 ned, 30. 10. 2011    Naslov: Citirajte i odgovorite

Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?

Napomena:
Klijenti koriste istu aplikaciju.

Hvala na odgovorima. :)
Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?

Napomena:
Klijenti koriste istu aplikaciju.

Hvala na odgovorima. Smile


[Vrh]
Korisnički profil Pošaljite privatnu poruku
mdoko
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 30. 11. 2002. (22:17:12)
Postovi: (71A)16
Spol: muško
Sarma = la pohva - posuda
199 = 237 - 38
Lokacija: Heriot-Watt University, Edinburgh

PostPostano: 15:53 ned, 30. 10. 2011    Naslov: Citirajte i odgovorite

[quote="kaj"]Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?
[/quote]
U zadacima koji se pojavljuju u zadaći ovo je najbolja varijanta:

[code:1]
// socket
// listen
// bind
while(1){
// accept konekcije s prvim klijentom
// accept konekcije s drugim klijentom
/* sada imamo dva komunikacijska socketa
preko kojih možemo komunicirati s oba klijenta */
}
[/code:1]
kaj (napisa):
Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?

U zadacima koji se pojavljuju u zadaći ovo je najbolja varijanta:

Kod:

// socket
// listen
// bind
while(1){
    // accept konekcije s prvim klijentom
    // accept konekcije s drugim klijentom
    /* sada imamo dva komunikacijska socketa
       preko kojih možemo komunicirati s oba klijenta */
}



_________________
Extraordinary claims require extraordinary evidence. – Carl Sagan
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
kaj
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 11. 2009. (21:02:20)
Postovi: (B8)16
Sarma = la pohva - posuda
= 6 - 2

PostPostano: 16:09 ned, 30. 10. 2011    Naslov: Citirajte i odgovorite

Shvatio sam vec do sad, al svejedno hvala!

Citao sam slideove sa vjezbi i to mi je palo na pamet kad sam procitao da "accept" zaustavlja daljnji rad programa sve dok se neki klijent ne "connecta". Probao sam sa "daytimeom" i radi (samo sto onda prvo treba posluziti onog koji se prvi "connecta").
Shvatio sam vec do sad, al svejedno hvala!

Citao sam slideove sa vjezbi i to mi je palo na pamet kad sam procitao da "accept" zaustavlja daljnji rad programa sve dok se neki klijent ne "connecta". Probao sam sa "daytimeom" i radi (samo sto onda prvo treba posluziti onog koji se prvi "connecta").


[Vrh]
Korisnički profil Pošaljite privatnu poruku
ante003
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 10. 2008. (17:45:10)
Postovi: (3C5)16
Spol: muško
Sarma = la pohva - posuda
24 = 71 - 47

PostPostano: 18:54 ned, 6. 11. 2011    Naslov: Citirajte i odgovorite

[quote="mdoko"][quote="kaj"]Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?
[/quote]
U zadacima koji se pojavljuju u zadaći ovo je najbolja varijanta:

[code:1]
// socket
// listen
// bind
while(1){
// accept konekcije s prvim klijentom
// accept konekcije s drugim klijentom
/* sada imamo dva komunikacijska socketa
preko kojih možemo komunicirati s oba klijenta */
}
[/code:1][/quote]

zasto tako ? zar ne mozemo napraviti accept prvog i drugog klijenta prije while petlje pa unutra s njima komunicirati ?
mdoko (napisa):
kaj (napisa):
Kako najlakse postici da server komunicira sa dva klijenta istovremeno? Da li trebam staviti dvije strukture u while petlji, while petlju unutar while petlje ili nesto trece?

U zadacima koji se pojavljuju u zadaći ovo je najbolja varijanta:

Kod:

// socket
// listen
// bind
while(1){
    // accept konekcije s prvim klijentom
    // accept konekcije s drugim klijentom
    /* sada imamo dva komunikacijska socketa
       preko kojih možemo komunicirati s oba klijenta */
}


zasto tako ? zar ne mozemo napraviti accept prvog i drugog klijenta prije while petlje pa unutra s njima komunicirati ?



_________________
Ako ste previše otvorenog uma, ispast će vam mozak
------------------------------------------------------
Racunalo bez Windowsa je kao riba bez bicikla
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Cobs
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 21. 01. 2008. (13:32:15)
Postovi: (206)16
Spol: muško
Sarma = la pohva - posuda
26 = 40 - 14
Lokacija: Geto

PostPostano: 20:41 ned, 6. 11. 2011    Naslov: Citirajte i odgovorite

[quote="ante003"]zasto tako ? zar ne mozemo napraviti accept prvog i drugog klijenta prije while petlje pa unutra s njima komunicirati ?[/quote]

Može, ali onda će server komunicirati samo sa 2 klijenta i nakon toga će se program ili skršiti ( zbog while petlje, jer će se pokušavati komunicirati preko neupotrijebljivih socketa koje si oslobodio ( kada krene u novu vrtnju petlje ) ) ili će u beskonačno raditi istu stvar sa 2 klijenta što nema nekog pretjeranog smisla ( u slučaju da na kraju while petlje ne oslobodiš sockete s kojima se komunicira preko klijenta ), jer poanta je da se server ajmo reć vrti nedefinirano dugo ( dok ga mi sami ne isključimo ), te da se klijenti nakon komunikacije sa serverom odspoje te server može primati nove konekcije od drugih klijenta što ne bi bilo zadovoljeno u tvojem slučaju.

Naravno ako ti misliš na komunikaciju servera i dva klijenta ( i samo 2 klijenta ), onda ti while petlja ništa ne znači, nego samo komplicira kod, no mislim da se u zadaći ne misli na takvu komunikaciju nego više na nekakvu simulaciju komunikacije pravih servera i klijenta, tek tolko da se stekne osjećaj kak to funkcionira. ( tj. u stvarnom svijetu ne vidim primjenu servera koji se gasi nakon komunikacije sa određenim brojem klijenata )
ante003 (napisa):
zasto tako ? zar ne mozemo napraviti accept prvog i drugog klijenta prije while petlje pa unutra s njima komunicirati ?


Može, ali onda će server komunicirati samo sa 2 klijenta i nakon toga će se program ili skršiti ( zbog while petlje, jer će se pokušavati komunicirati preko neupotrijebljivih socketa koje si oslobodio ( kada krene u novu vrtnju petlje ) ) ili će u beskonačno raditi istu stvar sa 2 klijenta što nema nekog pretjeranog smisla ( u slučaju da na kraju while petlje ne oslobodiš sockete s kojima se komunicira preko klijenta ), jer poanta je da se server ajmo reć vrti nedefinirano dugo ( dok ga mi sami ne isključimo ), te da se klijenti nakon komunikacije sa serverom odspoje te server može primati nove konekcije od drugih klijenta što ne bi bilo zadovoljeno u tvojem slučaju.

Naravno ako ti misliš na komunikaciju servera i dva klijenta ( i samo 2 klijenta ), onda ti while petlja ništa ne znači, nego samo komplicira kod, no mislim da se u zadaći ne misli na takvu komunikaciju nego više na nekakvu simulaciju komunikacije pravih servera i klijenta, tek tolko da se stekne osjećaj kak to funkcionira. ( tj. u stvarnom svijetu ne vidim primjenu servera koji se gasi nakon komunikacije sa određenim brojem klijenata )


[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
ante003
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 10. 2008. (17:45:10)
Postovi: (3C5)16
Spol: muško
Sarma = la pohva - posuda
24 = 71 - 47

PostPostano: 21:23 ned, 6. 11. 2011    Naslov: Citirajte i odgovorite

pa meni server treba komunicirati sa samo 2 klijenta jer oni igraju jednu igru. i ja sam napravio ovo

server:

spoji se s prvim klijentom
spoji se s drugim

while(igra nije gotova){
radi sto vec trebas
.
.
.
}

kraj;


klijent:

spoji se sa serverom

while(igra nije gotova) radi sto trebas

kraj;



e sad, meni je lakse (ako je to moguce) da napravim dva accepta prije while petlje u serveru i onda u while petlji komuniciram s klijentima.
ali tako zeza pa me zanima jel dobro (sto valjda nije)

jel to znaci da moram svaki puta raditi accept u while petlji kod servera i kod klijenta takoder svaki puta se connectati na server u while petlji ?
pa meni server treba komunicirati sa samo 2 klijenta jer oni igraju jednu igru. i ja sam napravio ovo

server:

spoji se s prvim klijentom
spoji se s drugim

while(igra nije gotova){
radi sto vec trebas
.
.
.
}

kraj;


klijent:

spoji se sa serverom

while(igra nije gotova) radi sto trebas

kraj;



e sad, meni je lakse (ako je to moguce) da napravim dva accepta prije while petlje u serveru i onda u while petlji komuniciram s klijentima.
ali tako zeza pa me zanima jel dobro (sto valjda nije)

jel to znaci da moram svaki puta raditi accept u while petlji kod servera i kod klijenta takoder svaki puta se connectati na server u while petlji ?



_________________
Ako ste previše otvorenog uma, ispast će vam mozak
------------------------------------------------------
Racunalo bez Windowsa je kao riba bez bicikla
[Vrh]
Korisnički profil Pošaljite privatnu poruku
mdoko
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 30. 11. 2002. (22:17:12)
Postovi: (71A)16
Spol: muško
Sarma = la pohva - posuda
199 = 237 - 38
Lokacija: Heriot-Watt University, Edinburgh

PostPostano: 21:46 ned, 6. 11. 2011    Naslov: Citirajte i odgovorite

[quote="ante003"]
e sad, meni je lakse (ako je to moguce) da napravim dva accepta prije while petlje u serveru i onda u while petlji komuniciram s klijentima.
ali tako zeza pa me zanima jel dobro (sto valjda nije)

jel to znaci da moram svaki puta raditi accept u while petlji kod servera i kod klijenta takoder svaki puta se connectati na server u while petlji ?[/quote]

Ma šta kompliciraš? :grebgreb: Acceptovi su u while petlji kako bi se omogućilo da se nakon što dva klijenta završe s igrom, mogu spojiti sljedeća dva klijenta bez da se server ugasi i ponovno pokreće. Jasno da će oba klijenta biti konstantno konektirani na server dok god ne završi partija. (Znači sve što ti treba je oko onoga što već imaš napisano još jedna petlja koja će omogućiti da server nastavi primati nove parove igrača nakon što jedan par završi s igrom.)
ante003 (napisa):

e sad, meni je lakse (ako je to moguce) da napravim dva accepta prije while petlje u serveru i onda u while petlji komuniciram s klijentima.
ali tako zeza pa me zanima jel dobro (sto valjda nije)

jel to znaci da moram svaki puta raditi accept u while petlji kod servera i kod klijenta takoder svaki puta se connectati na server u while petlji ?


Ma šta kompliciraš? Kotacici rade 100 na sat Acceptovi su u while petlji kako bi se omogućilo da se nakon što dva klijenta završe s igrom, mogu spojiti sljedeća dva klijenta bez da se server ugasi i ponovno pokreće. Jasno da će oba klijenta biti konstantno konektirani na server dok god ne završi partija. (Znači sve što ti treba je oko onoga što već imaš napisano još jedna petlja koja će omogućiti da server nastavi primati nove parove igrača nakon što jedan par završi s igrom.)



_________________
Extraordinary claims require extraordinary evidence. – Carl Sagan
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
eve
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 07. 2009. (23:07:06)
Postovi: (192)16
Spol: kućni ljubimac
Sarma = la pohva - posuda
-21 = 37 - 58

PostPostano: 0:47 pon, 7. 11. 2011    Naslov: Citirajte i odgovorite

Objavljeno je da zadace predajemo u utorak u 12 -jel to znaci da svi dolazimo u 12 ili?
Nadam se da se planira objavit nekakav raspored jer ovo nema smisla -usred kolokvija cemo izgubit pol dana cekajuci na red ak svi dodjemo u 12..
Objavljeno je da zadace predajemo u utorak u 12 -jel to znaci da svi dolazimo u 12 ili?
Nadam se da se planira objavit nekakav raspored jer ovo nema smisla -usred kolokvija cemo izgubit pol dana cekajuci na red ak svi dodjemo u 12..


[Vrh]
Korisnički profil Pošaljite privatnu poruku
mdoko
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 30. 11. 2002. (22:17:12)
Postovi: (71A)16
Spol: muško
Sarma = la pohva - posuda
199 = 237 - 38
Lokacija: Heriot-Watt University, Edinburgh

PostPostano: 12:46 pon, 7. 11. 2011    Naslov: Citirajte i odgovorite

Objavit ćemo okvirni raspored danas tokom dana.
Objavit ćemo okvirni raspored danas tokom dana.



_________________
Extraordinary claims require extraordinary evidence. – Carl Sagan
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji siročići (oni koji nemaju svoj podforum) -> Računarski kolegiji Vremenska zona: GMT + 01:00.
Idite na Prethodno  1, 2
Stranica 2 / 2.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan