GaGsOn Posted May 1, 2014 Posted May 1, 2014 გამარჯობათ ესაა ნაწყვეტი პროგრამიდან string str; char buffer[1000]; getline(cin,str); memset(buffer,0,999); recv(Socket,buffer,1000,0); cout<<buffer; cout<<" n"; const char *ch=str.c_str(); send(Socket,ch,1000,0); მინდა რომ ამ პროგრამამ იტრიალოს შეუჩერებლად და რა შეიძლება რო გამოვიყენო შეგიძლიათ მირჩიოთ რამე? ან რამე მაგალითი დაწეროთ. ეს პროგრამა ამ სახლით შუაში იჭედება, მაგალითად send-ით რომ იგზავნება შეტყობინება მანამ არ იგზავნება სანამ recv რამე შეტყობინებას არ მიიგებს და მინდა რომ recv არ დაელოდოს და send გააკეთოს იტრიალოს და რა შეიძლება რომ გამოვიყენო შეგიძლიათ მირჩიოთ რამე?
მიშო Posted May 1, 2014 Posted May 1, 2014 ეს არ წავა? while(true){ კოდი } ან რამე bool ცვლადი აღწერე. მნიშვნელობა true მიანიჭე და ის ჩასვი ვაილში. როცა აღარ გენდომება false მიანიჭე და გამოვა ციკლიდან. 1
GaGsOn Posted May 1, 2014 Author Posted May 1, 2014 ეს არ წავა? while(true){ კოდი } ან რამე bool ცვლადი აღწერე. მნიშვნელობა true მიანიჭე და ის ჩასვი ვაილში. როცა აღარ გენდომება false მიანიჭე და გამოვა ციკლიდან. while ით ეგრე არ შვება მე for( ; ; ) ვიყენებდი ეგრეც ვცადე მაგრამ ეს ორივე მგონი რო ერთიდაიგივეა. bool ს ვცდი მაგრამ არც მაგამ მგონ ია იმუშაოს.
მიშო Posted May 1, 2014 Posted May 1, 2014 while ით ეგრე არ შვება მე for( ; ; ) ვიყენებდი ეგრეც ვცადე მაგრამ ეს ორივე მგონი რო ერთიდაიგივეა. bool ს ვცდი მაგრამ არც მაგამ მგონ ია იმუშაოს. რატო არ შვება, ჩაციკვლა არ გინდა?
GaGsOn Posted May 1, 2014 Author Posted May 1, 2014 რატო არ შვება, ჩაციკვლა არ გინდა? კი ეგრე მინდა მაგრამ მეც ვერ მივხვდი რატომ არ შვება. სანამე რამეს send ით არ გაგზავნი recv არ ბეჭდავს. რეფრეშიშ მსგავსი მინდა რამე რო თავად დაარეფრეშოს ეგეთი რამე შეიძლება თუ იცი? ჩათის პროგრამაა ეს და შეიძლება მაგიტომ არ მუშაობს არ ვიცი
ოთო Posted May 1, 2014 Posted May 1, 2014 მეორე მხარის კოდიც დაპოსტე. ეს ან სერვერია ან კლიენტი. სოკეტიდან რომ იგზავნება შეტყობინება (send) მიდის უპრობლემოდ, უბრალოდ მერე ელოდება რომ რამე მიიღოს (recv) და შესაბამისად სანამ მეორე მხარიდან რამე შეტყობინება არ გამოვა სხვა ვერაფერს ვერ გააკეთებს და შესაბამისად ახლიდან არაფერი არ გაიგზავნება იმედია გარკვევით ავხსენი 2
GaGsOn Posted May 2, 2014 Author Posted May 2, 2014 ეს კლიენტია და სერვერის კოდის ზუსტად ესეთივეა. გასაგებია მადლობა
ოთო Posted May 2, 2014 Posted May 2, 2014 ზუსტად იგივე რომ იყოს გაჩერდება და არაფერს არ იზამს ეს იყო კლიენტი. ანუ ჯერ გააგზავნე და მერე დაელოდე string str; getline(cin,str); const char *ch=str.c_str(); send(Socket,ch,1000,0); char buffer[1000]; memset(buffer,0,999); recv(Socket,buffer,1000,0); cout<<buffer; cout<<" n"; და ეს კიდე სერვერი და იმშავებს უპრობლემოდ ანუ ჯერ მიიღე და მერე გააგზავნე string str; char buffer[1000]; getline(cin,str); memset(buffer,0,999); recv(Socket,buffer,1000,0); cout<<buffer; cout<<" n"; const char *ch=str.c_str(); send(Socket,ch,1000,0); თანმივდევრობა უნდა იყოს სხვადასხვა. ერთზე ჯერ იღებ და მერე აგზავნი და მერეოზე ჯერ აგზავნი და მერე იღებ. იგივე თანმივდორეობა რომ გქონდეს 2ივე გაჩერდება მიღებაზე 2
Recommended Posts