2009-11-01 2 views
1

Я знаю, что глобальные слова ограничены чем-то вроде 2500 слов. Что, если я боюсь дойти до предела, я бы хотел создать и уничтожить слова «на лету» с чем-то вроде unset: это решит риск, или просто невозможно сделать что-то масштабируемое?В Rebol можно ли очистить некоторые глобальные слова из памяти?

ответ

1

Предел составляет уникально названные слова. Конечно, у вас может быть много слов с таким же именем в различных контекстов; что не влияет на общее количество, например ....

context1: context [a: 1 b: 2 c: 3] 
context2: context [a: "zzzz" b: "yyyy" c: "xxxx"] 

.... добавляет только пять слов в общем списке слов (context1, context2, а, б, в)

Вы можете сохранить пространства, занимаемые значения, присвоенное слово, не используя незадано или ни, например:

unset 'context1 
context2/a: none 

но имя самого слова является never удален из глобального списка имен.

Хорошая новость .....

Предел был по цене от 2048 (плюс или минус несколько) в более ранних версиях REBOL. Он вырос в более поздних версиях. Последние версии R2 имеют ограничение в 32 000 (ono). R3 ближе к 500 000 и может повышаться, как только он переходит в бета-версию.

Если вы работаете на ранней версии REBOL и бьют уникальные имена слов предела, у вас действительно есть только два варианта:

  • обновления
  • rejiggle слова, которые вы используете так же имя используется в нескольких контекстах *
+0

О, отлично, я думал, что все еще 2000, поэтому я беспокоился, я больше не буду :) –

 Смежные вопросы

  • Нет связанных вопросов^_^