Posts from muffi in thread "Heute so gecodet..."

    :nixwiss: Please login to see this link. :gruebel

    Das ist der Packer, bei dem unterschiedliche Bitlängen codiert werden. Der Nachkompressor vom 64er Packer/Happy Packer ist so ein Packer. Das häufigste Byte wird mit einem Bit codiert: 0. Alle anderen erhalten dann immer mehr Bits, die seltensten Bytes werden dabei sogar verlängert.

    StringReader und Writer sind doch einfach.

    Nur sicherstellen, dass beim Writer auch geflushed wird

    STREAMwriter, nicht StringWriter :wink:

    Bei der Methode .close() flusht .Net aber automatisch. Und alle paar MB. Wenn Herrn Z80 der Stringbuilder nicht reicht, sind es mehr als 2 GB, da flusht Windows dauernd.

    Bei Make wurden damals sogar 2*Kerne+1 empfohlen

    Die paar wenigen Threads, die ich bisher programmiert habe, habe ich immer mit Kerne*2 (aber nicht im Sinne von Cores) programmiert. Aber da macht die von Dir erwähnte Thematik keine Probleme, denn die laufen dann Minuten- bis Stundenlang.

    Also nix großartig mit wie normalisiert man Datenbanken

    Also ich mache beruflich auch viel mit Datenbanken. Das Thema Normalisierung muss man ab einer gewissen Größe einfach klein schreiben, sonst braucht der Optimizer mehr Zeit als die Abfrage selber :wink:

    Warum hat man früher denn überhaupt normalisiert? Ganz einfach, weil der Speicherplatz knapp war. Die Zeiten sind vorbei und ich habe durchwegs gute Erfahrungen mit "so-gut-wie-keine-Normalisierung" gemacht.

    Was immer interessant ist, ist die brute-force Variante für die Gleichung

    T I E R

    + B A U M

    = L E B E N

    Auf dem 6510 habe ich es noch nicht laufen lassen, aber auf dem Z80 unter Turbo Pascal. Ich habe nicht alle Schleifen implementiert, weil ich nicht vor hatte, dass der Rechner tagelang läuft :wink: Wenn ich mich recht erinnere, war ab 6 Schleifen schon wahnsinnige Laufzeiten. Ob man da ein parallel.for unter VB irgendwie sinnvoll einsetzen kann, habe ich noch nie probiert.

    Ich mag halt die recht einfache Lesbarkeit von VB. Mit Java habe ich auch schon mal Zeug gemacht, aber da ich beruflich hauptsächlich Datenbank-Zeugs programmiere, bevorzuge ich .Net (C# ist für mich genauso schrecklich lesbar wie Java übrigens), denn schon alleine die Parameter sind um Längen komfortabler als mit Java. Wobei sich da inzwischen ja so Einges getan haben kann, das ist ja auch schon ein paar Jahre her.

    Und nachdem ich ja vom 6502 Assembler komme, sind für mich die meisten Sprachen einfach nur schrecklich zu lesen, so nebenbei :wink:

    Davon lese ich zum ersten mal etwas.

    Die TaskFactory ist gar nicht so übel, nur komischerweise wenig bekannt. Ist auf jeden Fall auch wert, sich mal (kurz) mit zu beschäftigen. Damit kann man auch schöne Nebenläufigkeiten machen.

    Ich vermute Du meinst damit Zwischenergebnisse? Da bin ich gerade dran am basteln, damit ich die Berechnungszeit verkürzen kann.

    Nein, race condition = zur Laufzeit. Da gibt es zum Teil minimalste Fehler, an die man erst mal gar nicht denkt. Ich hatte da auch mal ein Problem, das ich parallel lösen wollte (und dann auch gelöst habe). Da hatte ich das Problem, dass ich in der Theorie aus einer Queue Zeugs wieder entnommen habe (.Dequeue). Im Single Thread lief das geil, aber lahm (weil rechenintensiv). Also: her mit allen Kernen, die die Kiste hat :biggrin: Nur hatte ich nicht bedacht, dass die Queue nicht threadsicher ist (das Pendant ist ConcurrentQueue). Also kam es zur race condition zu Doppelberechnungen, deren Grund ich mir erst mal nicht erklären konnte. War das verständlich erklärt? Damit hab ich nämlich gerne mal meine lieben Probleme...