parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Работу с хешфайлом необходимо делать атомарной...

Sumo 16.12.2009 18:45 / 16.12.2009 18:51

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

У меня есть метод hashFile, который позволяет работать с хешфайлом достаточно безопасно:
  ^pfOS:hashFile[/path/to/file][hf]{
#   Здесь работаем с хешфайлом, ссылка на которо будет в переменной $hf
     $hf.ключ 
  } <- здесь произойдет автоматическое освобождение файла.
В принципе никто не мешает сделать так:
  $var1[^hashfile::open[/asd/var1]]
  ...
  ^try{
     $var2[^hashfile::open[/asd/var1]]
  }{
     $var2[$var1]
     $exception.handled(true)
   }
... но это крайне неудачный вариант и лучше подумать над изменением логики программы.