• 6 odgovora
  • 3.968 pregleda
Jednostavno pitanje u vezi sa socket-ima 30.01.2005. u 18:47 · pre 264 meseci #1
Meni samo jedna stvar nije jasna...

Kada kreiram socket [sa socket()], i kada se konektujem [sa connect()], i kada zatvorim socket [sa closesocket()], da li to znaci da je moj socket 'oslobodjen', i da moram ponovo da ga kreiram, sa socket(), ako zelim ponovo da se konektujem ?

Cemu sluzi shutdown() funkcija?
Ona zaustavlja protok?
A ne prekida konekciju?

Dakle, da rezimiram svoje pitanje:
- koliko sam ja shvatio, kada hocu da prekinem konekciju i ponovo je uspostavim [sa drugim serverom recimo] - onda - koristim closesocket(), i onda moram opet da kreiram socket sa socket() ?
Da ili Ne ?

I drugo pitanje - cemu onda sluzi shutdown(), i kada se koristi ?
Re: Jednostavno pitanje u vezi sa socket-ima 31.01.2005. u 00:45 · pre 264 meseci #2
shutdown se koristi za delimicni prekid veze (u jednom smeru, mada moze i u oba). ako klijent posalje zahtev serveru, posle poslednjeg zahteva klijent bi trebao da pozove shutdown(socketId, 1) sto znaci da nece vise slati zahteve ali socket ostaje otvoren za prijem podataka. kada server posalje sve zahtevane odgovore on poziva close. protokol sada moze da zatvori socket.
Re: Jednostavno pitanje u vezi sa socket-ima 31.01.2005. u 10:32 · pre 264 meseci #5
OK, to za shutdown() sam shvatio.

Ostaje prvo pitanje - kada zatvorim socket sa closesocket(), on vise nije upotrebljiv, i da bih ga opet koristio, moram opet da ga kreiram, funkcijom socket() ?
Da ili ne ?
Re: Jednostavno pitanje u vezi sa socket-ima 31.01.2005. u 14:39 · pre 264 meseci #6
Citat:
Goran Vucic: 
Ostaje prvo pitanje - kada zatvorim socket sa closesocket(), on vise nije upotrebljiv, i da bih ga opet koristio, moram opet da ga kreiram, funkcijom socket() ?
Da ili ne ?

Provjeri sam!
Kad zatvoris socket pokusaj da se konektujes,pa ako ne moze onda je sigurno da moras da koristis funkciju socket().
Potpis
[email protected]
Re: Jednostavno pitanje u vezi sa socket-ima 31.01.2005. u 17:31 · pre 264 meseci #7
Code:

$ ./examples/simple_tcp_client.exe 
Connecting to the localhost @ 80
Connected
Sent: Hi server!
Server: ok
Closing connection

Connecting to the localhost @ 80
Error: connect()


end of story...
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme