--- /dev/null
+<?php
+
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Command\LockableTrait;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class FooLockCommand extends Command
+{
+ use LockableTrait;
+
+ protected function configure()
+ {
+ $this->setName('foo:lock');
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output)
+ {
+ if (!$this->lock()) {
+ return 1;
+ }
+
+ $this->release();
+
+ return 2;
+ }
+}