anchor.diff:  %% @private
   init([Opts]) ->
     Args  = get_args(Opts),
  -  State = open_logs(Args),
  -  {ok, State#state{opts = Opts}}.
  -
  -%% @private
  -handle_call(reload, _From, #state{log_ref = LogRef, opts = Opts}) ->
  -  disk_log:sync(LogRef),
  -  disk_log:close(LogRef),
  +  {LogRef, LogFun} = open_logs(Args),
  +  Name = get_name(Args),
  +  Inode = get_inode(Name),
  +  Timer = erlang:start_timer(?CHECK_INTERVAL, self(), timeout),
  +  {ok, #state{log_ref = LogRef,
  +              log_fun = LogFun,
  +              opts = Opts,
  +              name = Name,
  +              inode = Inode,
  +              timer = Timer}}.
  +
  +%% @private
  +handle_call(reload, _From, #state{log_ref = LogRef, opts = Opts, name = Name, timer = TimerRef} = State) ->
  +  erlang:cancel_timer(TimerRef),
  +  safe_close(LogRef),
     Args  = get_args(Opts),
  -  State = open_logs(Args),
  -  {reply, ok, State#state{opts = Opts}};
  +  {LogRef1, LogFun1} = open_logs(Args),
  +  Inode = get_inode(Name),
  +  Timer = erlang:start_timer(?CHECK_INTERVAL, self(), timeout),
  +  {reply, ok, State#state{log_ref = LogRef1, log_fun = LogFun1, inode = Inode, timer = Timer}};
   handle_call(stop, _From, #state{log_ref = LogRef} = State) ->
  -  disk_log:sync(LogRef),
  -  disk_log:close(LogRef),
  +  safe_close(LogRef),
     {stop, normal, ok, State};
   handle_call(_Msg, _From, State) ->
     {reply, ok, State}.
  
positive.code:   {noreply, State}.
  
  %% @private
  handle_info(_Msg, StateData) ->
    {noreply, StateData}.
  
  
negative.code: -behaviour(gen_alog).
  -behaviour(gen_server).
  -include_lib("alog.hrl").
  -include_lib("kernel/include/file.hrl").
  
  %% API
  -export([start_link/2]).
  