我按照Symfony2 指南在开发模式下自动转储资产文件:
- 我将
use_controller
参数更改为false
在我的开发配置文件中。 我开始了
--watch
例行公事。$ php app/console assetic:dump --watch
我怎样才能停止观看?
我按照Symfony2 指南在开发模式下自动转储资产文件:
use_controller
参数更改为false
在我的开发配置文件中。我开始了--watch
例行公事。
$ php app/console assetic:dump --watch
我怎样才能停止观看?
仅在其自身工作时查找文件更改的命令。那么你停止命令 - 不再自动重新生成资产。
在 linux 上,它的典型 ctrl+c 或 ctrl+x
PS来自DumpCommand的一些代码
while (true) {
try {
foreach ($this->am->getNames() as $name) {
if ($this->checkAsset($name, $previously)) {
$this->dumpAsset($name, $output);
}
}
// reset the asset manager
$prop->setValue($this->am, array());
$this->am->load();
file_put_contents($cache, serialize($previously));
$error = '';
} catch (\Exception $e) {
if ($error != $msg = $e->getMessage()) {
$output->writeln('<error>[error]</error> '.$msg);
$error = $msg;
}
}
sleep($input->getOption('period'));
}
就像@forgottenbas 指出的那样,代码在无限循环中运行,所以它不是真正的后台工作人员,而只是一个占据你的外壳直到外力干预的工作人员。
通常,开发人员可以终止进程或它所占用的 shell 会话。
例如,在 OSX ctrl+上c发送SIGKILL
。
在 Windows 中,它在 Window shell 中的工作似乎有点不同:http ://en.wikipedia.org/wiki/Kill_(command)#Microsoft_Windows
这绝对是操作系统,或者更准确地说,取决于外壳。
如果您已经生成了一个 linux 后台进程,例如:
$ php app/console assetic:dump --watch &
你必须杀死正在运行的 php 进程