Citat:
Alldeles riktigt - Jo, det finns ju inte plats här att skriva en halv lärobok om hur man gör, trådar och processer är lite olika, mycket riktigt. Det blir snömos när jag spinner vidare på detta ämne. Den process som skapats av en fork får ju tex ha en egen signalhandler, och man skickar vidare sådan signal ifrån parent till child processen. Detta är ju bara ett sätt att klara av att stänga ner ett träd av processer, det finns ju annars många andra sätt. De körs ju vanligen i bakgrunden och har ingen kontakt med något fönsterobjekt
Ett ganska kreativt sätt är att använda sockets ellr pipes emellan processer/trådar, och man skickar då meddelanden emellan, och kan då skicka typ ett "stäng ner"-meddelande, just här finns ju inget behov av globaler annars.
Äh det förra var ju egentligen ett fånigt exempel på globaler. Men jag sett kod där tex trådid (threadid) varit globaler. En annan tillämpning för globaler är ju tex i simuleringar ifall de innefattar typ 100 000 tals anrop till samma serie av funktioner, Varje anrop kostar CPU-cykler i form av parameteröverföring, och då kan man skippa det med att dataserien finns som globaler istället - Men i allmänhet det rör sig då om relativt små tidsbesparingar totalt sett. Det krånglar dock till logiken ordentligt om man måste köra sådana simuleringar trådat, och måste synka globalerna med mutexar elr andra synkobjekt.
-- Bäst vi diskuterar globaler medans vi kan -snart kanske enowen utfärdar en fatwa emot globaler (+ gotos) ? Och globaler/gotos blir tabu och icke-PK ?
Ett ganska kreativt sätt är att använda sockets ellr pipes emellan processer/trådar, och man skickar då meddelanden emellan, och kan då skicka typ ett "stäng ner"-meddelande, just här finns ju inget behov av globaler annars.
Äh det förra var ju egentligen ett fånigt exempel på globaler. Men jag sett kod där tex trådid (threadid) varit globaler. En annan tillämpning för globaler är ju tex i simuleringar ifall de innefattar typ 100 000 tals anrop till samma serie av funktioner, Varje anrop kostar CPU-cykler i form av parameteröverföring, och då kan man skippa det med att dataserien finns som globaler istället - Men i allmänhet det rör sig då om relativt små tidsbesparingar totalt sett. Det krånglar dock till logiken ordentligt om man måste köra sådana simuleringar trådat, och måste synka globalerna med mutexar elr andra synkobjekt.
-- Bäst vi diskuterar globaler medans vi kan -snart kanske enowen utfärdar en fatwa emot globaler (+ gotos) ? Och globaler/gotos blir tabu och icke-PK ?
haha vafan kom de där ifrån?
Men mycket riktigt. Globala variabler och goto's är ett nono i mitt tycke. Du hade inte fått igenom en code-review om du hade börjat skriva globala variabler här och där som någon annan efter ett tag hade fått gissa sig fram till och hoppa med ctags...
Även om detta inte är skrivet i c++ så är drupal är perfekt exempel på varför globala variabler och funktioner suger balle. DÄR fick du din fatwa
__________________
Senast redigerad av enowen 2016-10-18 kl. 16:43.
Senast redigerad av enowen 2016-10-18 kl. 16:43.