26. oktober 2002 - 17:31Der er
26 kommentarer og 1 løsning
messagepassing i C
Følgende bid af et program viser en while-løkke, der kører uendeligt for at vente på at modtage en besked. Mit problem er så, at hvis der modtages en besked fra beskedkøen med id'et msgid2, så bliver den ikke modtaget før en besked er modtaget fra beskedkøen med id'et msgid. Hvordan undgår jeg, at løkken står og venter ved den første eksekvering af msgrcv? Jeg skal med andre ord kun tilgå msgrcv-funktionen, hvis der findes en besked i lige netop dens beskedkø.
Hepsa Lasse!!!!!! sjovt problem du har der. Det har vi siddet med de sidste 2 dage. har endnu ikke fundet en løsning det er pænt fucked up... men hvis der nu kommer en løsning så ring lige......ik.
Jeg kender godt nok ikke lige C så godt men vil så¨dan som jeg ser problemet så er det en kommando der låser eksekveringen. Derfor skal du enten bruge en anden som ikke låser eller køre i flere tråde.
Lå Låååååååå Jeg har lige fået nye "booooots".... Smæk en fin lille super dejlig semafor omkring det! Så kan processen jo ikke blive interruptet.... og så er alle beskeder jo sendt, før en anden proces kommer til..
kunne man ikke bare gemme msgrcv(msgid, (void *)&some_data1, BUFSIZ, msg_to_receive, 0) i en variabel og så tjekke. denne variabel. Så låser den ikek ved den forkerte
Hm... Et kig igennem de sidste dages spørgsmål i dette forum viser en stor interesse for f.eks. message queues, structs og fork() af processer. Områder som udgør en væsentlig del af godkendelses opgaven i datalogi på DØK 2. år på CBS. Nu kan det naturligvis være et tilfælde at det netop er disse tre områder der er interesse for, men den eksempel kode, som flere vedlægger henviser direkte til opgaven (et lager logistik system for en tøjbutik). Min kommentar "I skal nok blive til noget" henviser til at jeg finder det temmeligt sørgeligt at studerende må ty til et forum, som dette for at løse en opgave hvor alle de nødvendige kundskaber er præsenteret igennem forelæsninger og øvelser siden september. Hvad signalerer det om DØK'ere til omverdenen?
Ikke for at gøre det her til et chat forum... men...
-->Jakob Det var nu bare ment som lidt humor, men det er selvfølgelig op til dig at fortolke det som du vil. At det med støvlerne ikke falder i så god jord, det må jeg jo så huske på. Desuden var hensigten bare at hjælpe lidt. -->mskott Bare fordi vi ikke er super skarpe c-hajer, og ret ofte sidder fast. Hvad er så problemet i at hente hjælp et sted som her? Det er vel det formålet er med exp.dk? Om det så er hjælp til en opgave eller hvad det er vel underordnet, hvis man i sin opgave skrive exp.dk på som kilde, hjælpende hånd eller hvad man nu finder på. Jeg kan ikke se noget problem i det. Desuden er det få procenter af døk-opgave-skrivende som stille spørgsmål her.
hepsa tp. Jeg synes sgu det var humor. mit var også bare ment i humor.... jeg elsker mine booooooooooooots!!! og jeg ved du også godt kan lide dem.
og lige til swaq og mskott, hold da kæft nogle hellige luder røve i er, det er sgu datil at brække sig over. jeg tror forskellen ligger i a vi lever et liv ved siden af C, hvilket gør det svært at blive super skark...
men ok, det er vel svært at forstå når man sidder med kondens vand løbende ned af brillerne, med oste fingerne fastklæbet til tastaturet!!!!
smeltet : Sprogbrug og generel opførsel er ganske enkelt uacceptabelt. Du bør genoverveje *meget* nøje om du har i sinde at følge reglerne, hvis du skulle få lyst til at oprette en bruger igen.
Efter alt denne kasten med mudder er det vist på tide at hjælpe lasse_h (opgaven skal jo afleveres på fredag så det er ved at op over). Lasse_h: Kig på side 475 i "Beginning Linux Programming". Svaret på dit problem står i det afsnit der starter med: The fifth parameter...
Hint: Det drejer sig om IPC_NOWAIT flaget til msgrcv (til de der ikke har bogen)
XXXXXXXXX@image.dk> wrote: >The line gets written to the file but if I run the program again the >line generated in the previous run gets overwritten? I dont want that, >I want the program to append my string to the file without touching >other lines. Can you help me.
See the open() documentation. In short: fp = open('file', 'a')
Tjah, smartdoek. Dygtig anvendelse af Google. Utroligt hvad der er af arkiver på nettet. Vi skal alle lære noget nyt af og til og i den forbindelse kan det være rart med noget hjælp. Den mailingliste du har fundet mig på er til sproget Python, som jeg lærte ved selvstudie for et par år siden. Dvs. jeg havde ikke haft et antal forelæsninger og øvelsestimer til at lære sproget.
mskott>> Citat: "Hvor er det sørgeligt at der er så få DØK studerende der har fulgt med i undervisningen. I skal sgu nok blive til noget..."
Det er måske ikke lige så heldigt at kommentere på den måde. Det er meget konfronterende og næsten at opsøge balladen. Lad venligst være med dette i fremtiden.
Med venlig hilsen
FCS/CoAdmin
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.