Programmierafugabe 9.4
Programmierafugabe 9.4
Hallo!
ich wäre sehr dankbar, wenn jemand mir erklären würde, was "mehrere gleichzeitig aktive Clients sollen möglich sein" bedeutet. Heißt es, dass Clients ihre Tasks unabhängig voneinander erstellen oder dass ein Client die Ergebnisse von dem anderen mitbekommen soll?
Danke im voraus!
ich wäre sehr dankbar, wenn jemand mir erklären würde, was "mehrere gleichzeitig aktive Clients sollen möglich sein" bedeutet. Heißt es, dass Clients ihre Tasks unabhängig voneinander erstellen oder dass ein Client die Ergebnisse von dem anderen mitbekommen soll?
Danke im voraus!
Re: Programmierafugabe 9.4
Du startest z.B. 2 Clients und 5 Worker alle im gleichen Tuplespace, die Worker bearbeiten die Jobs von beiden Clienten, jenachdem wo einer gerade frei ist. Danach muss der jeweilige Client seine zugehörigen Jobs wieder aus dem TupleSpace holen.
So hab ich es verstanden,
ich habe eine andere Frage,
ich habe das Problem das bei mehreren Workern bei mir die Worker gleichzeitig auf ein Tupel zugreifen. Dabei kommt ein Fehler im Bild zustande.
Hat jemand ne Idee wie man diese gleichzeitige zugreifen umgehen kann, bzw. hat jemand noch das Problem...
So siehts aus...
Folgende Fehlermeldung gehört dazu:
com.ibm.tspaces.TupleSpaceServerException: com.ibm.tspaces.server.handler.TSHandlerException:
TSHGalaxy: Error processing command. "Error "delete failed. Non-existent id: TupleID: 12649" while processing command "TakeTupleById" for tuple space "MandelBrot".".

So hab ich es verstanden,
ich habe eine andere Frage,
ich habe das Problem das bei mehreren Workern bei mir die Worker gleichzeitig auf ein Tupel zugreifen. Dabei kommt ein Fehler im Bild zustande.
Hat jemand ne Idee wie man diese gleichzeitige zugreifen umgehen kann, bzw. hat jemand noch das Problem...
So siehts aus...
Folgende Fehlermeldung gehört dazu:
com.ibm.tspaces.TupleSpaceServerException: com.ibm.tspaces.server.handler.TSHandlerException:
TSHGalaxy: Error processing command. "Error "delete failed. Non-existent id: TupleID: 12649" while processing command "TakeTupleById" for tuple space "MandelBrot".".
Re: Programmierafugabe 9.4
So habe ich es auch verstanden...
Bei mir kommt es auch vor, dass manchmal Bildausschnitte fehlen. Allerdings ohne Fehlermeldung. Ich weiß auch nicht ob sie auf dem Weg zu den Workern oder auf dem Rückweg verloren gehen. Um so mehr Worker ich laufen lasse, desto mehr Ausschnitte fehlen. Könnte also auch das selbe Problem sein....
Bei mir kommt es auch vor, dass manchmal Bildausschnitte fehlen. Allerdings ohne Fehlermeldung. Ich weiß auch nicht ob sie auf dem Weg zu den Workern oder auf dem Rückweg verloren gehen. Um so mehr Worker ich laufen lasse, desto mehr Ausschnitte fehlen. Könnte also auch das selbe Problem sein....
Re: Programmierafugabe 9.4
Es gibt eine maximale Anzahl an Daten die im TSpace liegen können. Sobald diese Menge überschritten wird, kommt es zu massiven Problem. Abhilfe schafft hier das sofortige löschen der Daten aus dem TSpace, sobald man die Daten nicht mehr benötigt. Insbesondere Daten die man per Listener erhalten hat, werden nicht automatisch gelöscht, es sei denn man hat eine Time-to-live angegeben.
Re: Programmierafugabe 9.4
Ich kriege auch ab und zu den "delete-fehler", während mein Listener versucht die abgearbeiteten Tuples zu löschen. Ob die Einschränkung der Tupleanzahl im SPace die Ursache dafür ist, bin ich mir nicht sicher, denn genau das Löschen soll verhindern, dass es zuviele Tuple gelagert werden und dadurch übersteigt die Anzahl bei mir keine 100 Tuples und trotzdem kommt es zu diesem Fehler :/
Re: Programmierafugabe 9.4
Wenn du EventRegister verwendest, solltest du keine write/delete Operationenim gleichen Thread verwenden. Siehe dazu auch den Programmer's Guide->Event Register
Re: Programmierafugabe 9.4
/edit
steht da nicht, dass man es nicht machen darf, wenn newThread auf false ist? Bei mir setze ich es auf true, also darf ich es auch löschen oder nicht?
steht da nicht, dass man es nicht machen darf, wenn newThread auf false ist? Bei mir setze ich es auf true, also darf ich es auch löschen oder nicht?
-
- Mausschubser
- Beiträge: 64
- Registriert: 9. Nov 2005 23:39
- Wohnort: Frankfurt
Re: Programmierafugabe 9.4
ich frage mich ehrlich gesagt wie das zu verstehen sein soll
wie habt ihr das denn umgesetzt?Ein farbiger Balken am linken Bildrand zeigt an, welcher Worker den Bildteil berechnet hat.
I am a drunk. I dont know nothing about how I do anything.
Re: Programmierafugabe 9.4
Bei mir ist ein 20 Pixel breiter Balken. Jeder Worker kann beim Start festlegen welche Farbe er hat.
-
- Mausschubser
- Beiträge: 64
- Registriert: 9. Nov 2005 23:39
- Wohnort: Frankfurt
Re: Programmierafugabe 9.4
kannst du mal nen screenshot zeigen? bin da etwas überfordert wie das aussehen soll...
I am a drunk. I dont know nothing about how I do anything.
Re: Programmierafugabe 9.4
Einfach die ersten paar pixel jeder zeile anders faerben 

Re: Programmierafugabe 9.4
Hi,
was heißt Listener? Arbeitet ihr da nicht mit waitToTake? Mit was denn sonst?
was heißt Listener? Arbeitet ihr da nicht mit waitToTake? Mit was denn sonst?
Re: Programmierafugabe 9.4
Mit einem EventlListener, siehe dir den Programmers Guide an.
- Laut Aufgabenstellung wird für den Client ein EventListener verlangt
- Laut Aufgabenstellung wird für den Client ein EventListener verlangt
Re: Programmierafugabe 9.4
Welcher Programmers Guide?
Also hier:
http://www.almaden.ibm.com/cs/TSpaces/h ... Guide.html
steht nichts von EventListener...
Also hier:
http://www.almaden.ibm.com/cs/TSpaces/h ... Guide.html
steht nichts von EventListener...
Re: Programmierafugabe 9.4
punkt 11