La lentitud dels objectes remots
Només volia fer esment de la lentitud de treballar amb objectes remots (classe NSDistantObject) amb Cocoa.
Desenvolupant el programa de traducció del Mac en que hi tinc separat el procés que fa la feina i l'editor amb les finestres i que s'han de comunicar per poder mostrar-ne les dades, em trobo amb la desagradable situació que per rebre una llista d'uns 1000 elements em triga uns 3 minuts.
Si el mostro en un arbre cada cop que obro la branca amb els 1000 element m'he d'esperar els 3 minuts, ja que els llegeix tots de cop. Si en canvi els mostro en una vista en llista, no m'he d'esperar els 3 minuts, sinó només 3 segons ja que només llegeix els elements que mostra. Tanmateix, cada cop que desplaço la barra per veure els altres un altre cop queda bloquejat 3 segons per poder llegir i dibuixar-los.
Veient que és impossible treballar d'aquesta manera, l'única opció és treballar amb una còpia dels elements. L'editor demana els elements al programa de processat i els rep en menys d'un segon, tot i que accedir a tots els elements triga també 4 segons.
Un cop copiats, els puc mostrar en una vista en forma de llista o arbre a la velocitat normal (ràpida). Si veiem que el llistat està desactualitzat, ens caldrà tornar a demanar la informació.
Però realment el desavantatge de no treballar amb la informació directa es veu compensada amb l'agilitat a l'hora de treballar-hi.
10 març 2009 09:43
