[Vienna-pm] Verblüffendes Zeitverhalten

Peter J. Holzer hjp at wsr.ac.at
Fri Sep 10 08:55:29 CDT 2004


On 2004-09-10 11:15:07 +0200, Leopold Toetsch wrote:
> Peter J. Holzer wrote:
> >
> >$a = scalar(%hash)
> >$a = scalar(keys %hash)
> 
> "keys" im scalar Context scheint eine Abkürzung zu beinhalten, soweit 
> ich Perl_do_kv() lesen kann.

Ja, das habe ich nach den Ergebnissen vermutet (war aber zu faul, im
Source nachzulesen).

> Bei ersterem wird wahrscheinlich eine Liste von Key/Value Paaren
> erzeugt und von der die halbe Länge retourniert.

Nein, das hat Wolfgang eh schon aufgeklärt. Ist ein String der die
Anzahl der benützten/gesamten Buckets beinhaltet. Und nachdem er das
erwähnt hat, kann ich mich daran erinnern, dass ich darüber schon einmal
gestolpert bin. 

Die Gesamtanzahl der Buckets scheint übrigens die Anzahl der Einträge
gerundet auf die nächste Zweierpotenz zu sein:

1000: 634/1024
2000: 1280/2048
3000: 2139/4096
4000: 2573/4096
5000: 3733/8192
8000: 5094/8192
9000: 6853/16384
16000: 10233/16384
17000: 13192/32768
32000: 20347/32768
33000: 25830/65536
65000: 41195/65536
66000: 51848/131072

Für meine Zwecke hätte das also auch gereicht (es ist völlig wurscht, ob
ich nach 500 oder 512 Token abbreche, es sollten nur nicht 25000
werden). Aber da der exakte Wert eh schneller zu bestimmen ist, nehme
ich natürlich den.

	hp

-- 
   _  | Peter J. Holzer      | Shooting the users in the foot is bad. 
|_|_) | Sysadmin WSR / LUGA  | Giving them a gun isn't.
| |   | hjp at wsr.ac.at        |	-- Gordon Schumacher,
__/   | http://www.hjp.at/   |     mozilla bug #84128
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 388 bytes
Desc: not available
Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20040910/00d07f1b/attachment.bin


More information about the Vienna-pm mailing list