аккуратная / эффективная запись функций (сборка мусора) в R - PullRequest
2 голосов
/ 18 мая 2010

Извините за мое невежество, так как я не инженер по вычислительной технике, но имею корни в биологии. Я стал большим поклонником предварительного выделения объектов (слава Патрису Бернсу для SO и R inferno) и хотел бы улучшить свои привычки кодирования. Вместо этого я подумал о написании более эффективных функций и задаю следующий вопрос.

Есть ли какие-либо преимущества в удалении переменных, которые будут перезаписаны в начале следующего цикла, или это пустая трата времени? В качестве аргумента давайте предположим, что размер старых и новых переменных очень похож или идентичен.

Ответы [ 2 ]

3 голосов
/ 18 мая 2010

Я думаю, это действительно будет зависеть от специфики дела. В некоторых случаях, когда объект велик, может быть хорошей идеей его rm (), особенно если он не нужен и есть много других вещей, которые нужно сделать, прежде чем он будет перезаписан. Но опять же, не исключено, что можно представить себе обстоятельства, в которых стратегия может быть дорогостоящей с точки зрения времени вычислений.

Единственный способ узнать, действительно ли это стоит того, - попробовать оба способа и проверить с помощью system.time ().

1 голос
/ 18 мая 2010

Нет. Автоматическая сборка мусора позаботится об этом просто отлично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...