గోలాంగ్‌లో సెలెక్ట్ స్టేట్‌మెంట్‌ను ఎలా ఉపయోగించాలి?

Golang Lo Selekt Stet Ment Nu Ela Upayogincali



ప్రకటనను ఎంచుకోండి ఇన్ గోలాంగ్ డెవలపర్‌లను గో రొటీన్‌లు, ఛానెల్‌లు మరియు డేటా స్ట్రీమ్‌ల మధ్య సమకాలీకరించడానికి మరియు కమ్యూనికేట్ చేయడానికి అనుమతిస్తుంది. ఇది గో ప్రోగ్రామ్‌ను ఒకేసారి బహుళ ఛానెల్ ఆపరేషన్‌లలో వేచి ఉండటానికి మరియు సిద్ధంగా ఉన్న మొదటి ఆపరేషన్‌ని అమలు చేయడానికి అనుమతిస్తుంది.

ఈ వ్యాసంలో, ఎలా ఉపయోగించాలో మేము విశ్లేషిస్తాము ప్రకటనను ఎంచుకోండి గోలాంగ్‌లో మరియు గో ప్రోగ్రామ్‌లలో సమాంతరత, సమకాలీకరణ మరియు సమకాలీకరణను సాధించడంలో మీకు సహాయపడటానికి ఉదాహరణలను అందించండి.

గోలాంగ్‌లో సెలెక్ట్ స్టేట్‌మెంట్‌ను ఎలా ఉపయోగించాలి?

స్విచ్ స్టేట్‌మెంట్ లాగానే, ది ప్రకటనను ఎంచుకోండి అనేక వ్యక్తీకరణలలో ఒక వ్యక్తీకరణను ఎంచుకోవడానికి మరియు అమలు చేయడానికి మమ్మల్ని అనుమతిస్తుంది, కానీ వాటి మధ్య ప్రాథమిక వ్యత్యాసం ఎంచుకోండి మరియు స్విచ్ అంటే ప్రకటనను ఎంచుకోండి వేచి ఉండే సూత్రంపై విధులు నిర్వహిస్తుంది, అంటే ది ప్రకటనను ఎంచుకోండి కమ్యూనికేషన్ పూర్తయ్యే వరకు అమలు చేయదు.







ఇక్కడ, కమ్యూనికేషన్ అనేది ఏదైనా ఛానెల్‌లో డేటాను పంపడం మరియు స్వీకరించడాన్ని సూచిస్తుంది. కమ్యూనికేషన్ పూర్తయినప్పుడు, తదుపరి తనిఖీ చేయబడుతుంది, ఇది గో భాష యొక్క ఎంపిక ప్రకటన పూర్తిగా ఛానెల్‌పై ఆధారపడి ఉందని చూడటానికి అనుమతిస్తుంది.



ఎంపిక ప్రకటన కోసం సింటాక్స్

కోసం ఉపయోగించే సాధారణ వాక్యనిర్మాణం ప్రకటనను ఎంచుకోండి గో భాషను ఉపయోగించడం క్రింద చూపబడింది:



ఎంచుకోండి {
కేసు ఛానెల్_1 :
// channel_1 సిద్ధంగా ఉన్నప్పుడు అమలు చేయడానికి కోడ్
కేసు ఛానెల్_2 :
// channel_2 సిద్ధంగా ఉన్నప్పుడు అమలు చేయడానికి కోడ్
కేసు ఛానెల్_3 :
// channel_3 సిద్ధంగా ఉన్నప్పుడు అమలు చేయడానికి కోడ్
కేసు ఛానెల్_4 :
// channel_4 సిద్ధంగా ఉన్నప్పుడు అమలు చేయడానికి కోడ్
డిఫాల్ట్ :
// ఛానెల్‌లు ఏవీ సిద్ధంగా లేకుంటే అమలు చేయడానికి కోడ్
}

ఇక్కడ:





  • a లోపల ప్రకటనను ఎంచుకోండి , ప్రతి సందర్భం ఒక ఛానెల్ ఆపరేషన్‌ను సూచిస్తుంది, ఇది స్వీకరించే ఆపరేషన్ లేదా పంపే ఆపరేషన్ కావచ్చు.
  • ది ప్రకటనను ఎంచుకోండి కేస్‌లలో ఒకటి సిద్ధమయ్యే వరకు వేచి ఉండి, ఆపై దాన్ని మరియు సంబంధిత కేస్ స్టేట్‌మెంట్‌ను అమలు చేస్తుంది.
  • అమలు చేయడానికి బహుళ ఛానెల్‌లు సిద్ధంగా ఉన్నట్లయితే ఇది యాదృచ్ఛికంగా ఛానెల్‌ని ఎంచుకుంటుంది.

గోలాంగ్‌లో ఛానెల్‌ని ఎలా సృష్టించాలి

Goలో ఛానెల్‌ని సృష్టించడానికి, వినియోగదారులు మేక్ ఫంక్షన్‌ని ఉపయోగించవచ్చు చాన్ కీవర్డ్ మరియు ఛానెల్ రకాన్ని పేర్కొనండి, ఇది int, స్ట్రింగ్ లేదా ఇతరాలు కావచ్చు.

:= తయారు ( చాన్ రకం )

గోలాంగ్‌లో ఎంపిక ప్రకటనను అమలు చేయండి

ఇక్కడ, మేము ఉపయోగించడం యొక్క ప్రాథమికాలను తెలుసుకోవడానికి మీకు సహాయం చేయడానికి అనేక ఉదాహరణలను అందిస్తాము ప్రకటనను ఎంచుకోండి గోలాంగ్‌లో.



ఉదాహరణ 1

యొక్క క్రింది ఉదాహరణ ప్రకటనను ఎంచుకోండి రెండు ఛానెల్‌లు అమలు చేయడానికి సిద్ధంగా ఉన్నప్పుడు అది ఎలా పని చేస్తుందో ప్రదర్శిస్తుంది.

ప్యాకేజీ ప్రధాన

దిగుమతి 'fmt'

ఫంక్ మెయిన్ ( ) {

ఒకదానిపై := తయారు ( చాన్ int )

str := తయారు ( చాన్ స్ట్రింగ్ )

chan_num వెళ్ళండి ( ఒకదానిపై )

వెళ్ళు chan_str ( str )

ఎంచుకోండి {

కేసు Ch1 := <- ఒకదానిపై :

fmt Println ( 'ఛానల్ డేటా:' , Ch1 )

కేసు చ2 := <- str :

fmt Println ( 'ఛానల్ డేటా:' , చ2 )

}

}

ఫంక్ చాన్_నమ్ ( నమ్ చాన్ int ) {

ఒకదానిపై <- 67

}

func chan_str ( str చాన్ స్ట్రింగ్ ) {

str <- 'Linux'

}

పై ఉదాహరణలో, మేము రెండు ఛానెల్‌లను సృష్టించాము, ఒకదానిపై, మరియు str మరియు మేము గో ఫంక్షన్‌లను ఉపయోగించాము chan_num() నంబర్ ఛానెల్‌కి డేటాను పంపడానికి మరియు chan_str() str ఛానెల్‌కు డేటాను పంపడానికి. ప్రోగ్రామ్ రెండు వేర్వేరు ఛానెల్‌లను కలిగి ఉన్నందున, మేము దానిని ఉపయోగించాము ప్రకటనను ఎంచుకోండి వాటిలో ఒకదాన్ని అమలు చేయడానికి.

కేసు Ch1 నుండి విలువను చదువుతుంది సంఖ్య ఛానెల్ మరియు దానిని ప్రదర్శిస్తుంది. అదేవిధంగా, కేసు చ2 నుండి విలువను అందిస్తుంది str ఛానెల్. పై ప్రోగ్రామ్ ఉపయోగించడానికి సిద్ధంగా ఉన్న ఛానెల్ అవుట్‌పుట్‌ను అందిస్తుంది. అవుట్‌పుట్

ఉదాహరణ 2

మీరు ఛానెల్‌కు ఆలస్యాన్ని జోడించి, మరొక ఛానెల్ అవుట్‌పుట్‌ను తిరిగి ఇవ్వాలనుకుంటే, మీరు దీన్ని ఉపయోగించవచ్చు సమయం.నిద్ర() పేర్కొన్న ఛానెల్‌లో ఫంక్షన్. ఇది ఇతర ఛానెల్ యొక్క అవుట్‌పుట్‌ను కన్సోల్‌కు ప్రింట్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. అటువంటి సందర్భానికి ఉదాహరణ ఇక్కడ ఉంది.

ప్యాకేజీ ప్రధాన

దిగుమతి (

'fmt'

'సమయం'

)

ఫంక్ మెయిన్ ( ) {

ఒకదానిపై := తయారు ( చాన్ int )

str := తయారు ( చాన్ స్ట్రింగ్ )

chan_num వెళ్ళండి ( ఒకదానిపై )

వెళ్ళు chan_str ( str )

ఎంచుకోండి {

కేసు Ch1 := <- ఒకదానిపై :

fmt Println ( 'ఛానల్ డేటా:' , Ch1 )

కేసు చ2 := <- str :

fmt Println ( 'ఛానల్ డేటా:' , చ2 )

}

}

ఫంక్ చాన్_నమ్ ( నమ్ చాన్ int ) {

ఒకదానిపై <- 67

}

func chan_str ( str చాన్ స్ట్రింగ్ ) {

సమయం . నిద్రించు ( 5 * సమయం . రెండవ )

str <- 'Linux'

}

పైన ఇచ్చిన కోడ్‌లో, మేము ఉపయోగించాము సమయం. నిద్ర() లోపల ఫంక్షన్ chan_str() ఫంక్షన్. నంబర్ ఛానెల్ మాత్రమే మొదటి 5 సెకన్ల పాటు అమలు చేయడానికి సిద్ధంగా ఉంది. ఫలితంగా, ది ప్రకటనను ఎంచుకోండి కేసు నడుపుతుంది Ch1 .

అవుట్‌పుట్

గమనిక: ఛానెల్‌ల అమలును ఆలస్యం చేయడానికి మీరు రెండు ఛానెల్‌లకు ఆలస్యాన్ని జోడించవచ్చు.

ముగింపు

ది ప్రకటనను ఎంచుకోండి ఇన్ గో నిరీక్షణ సూత్రాన్ని ఉపయోగించి అనేక వ్యక్తీకరణల నుండి ఒక వ్యక్తీకరణను ఎంపిక చేయడానికి మరియు అమలు చేయడానికి అనుమతిస్తుంది, ఇక్కడ కమ్యూనికేషన్ పూర్తయ్యే వరకు స్టేట్‌మెంట్ అమలు చేయబడదు. పైన పేర్కొన్న మార్గదర్శకాలు ఉన్నాయి ప్రకటనను ఎంచుకోండి ప్రాథమిక వాక్యనిర్మాణం మరియు ఉదాహరణలు.