public function watch($path, array $events, callable $listener)
    {
        $fileEvents = $this->getEventMap();
        $watcher = new ResourceWatcher();
        $paths = is_array($path) ? $path : [$path];
        foreach ($paths as $path) {
            $this->trackPath($path, $events, $listener, $watcher, $fileEvents);
        }
        $watcher->start();
    }
public function watch($path, array $events, callable $listener)
    {
        $fileEvents = $this->getEventMap();
        $watcher = new ResourceWatcher();
        $paths = is_array($path) ? $path : [$path];
        foreach ($paths as $path) {
            $this->trackPath($path, $events, $listener, $watcher, $fileEvents);
        }
        $watcher->start();
    }
{@inheritdoc}

@param $path
@param array $events
@param callable $listener
@return mixed|void