|
c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
Absender: Timo Sandmann
Datum: Fr, 19.09.2008 14:53:41
In-reply-to:
<AD14A13F-6BFC-4835-9666-561FE67325F1@xxxxxxxxxxxxxxx>
References:
<000401c919b9$83e97890$0200a8c0@mexpnew> <AD14A13F-6BFC-4835-9666-561FE67325F1@xxxxxxxxxxxxxxx>
Hi,
wir könnten das online-shrinking auch so ändern, dass nicht bei jedem
Schreibzugriff auf ein Feld die Map-Koordinaten verglichen werden,
sondern stattdessen die Blöcke (512 Byte). Dann hätten wir den
Overhead nur noch, wenn ein Block ausgelagert wird (was sowieso lange
dauert), die Auflösung der Min- / Max-Werte wird damit aber natürlich
gröber.
Vielleicht ist das aber ja noch völlig ausreichend?
map_get_min/max() können aus den Blöcken ja wieder Koordinaten
errechnen, die dann aber eben den äußersten Punkt des Blocks angeben,
der in der Süd-West- bzw. Nord-Ost-Ecke der belegten Karte liegt.
Wenn das für die Verhalten noch genau genug ist (?), können wir den
offline-Modus wohl ganz entfernen, die belegten Blöcke zu pflegen
kostet dann ja kaum noch Zeit.
Grüße,
Timo
|
|