File tree Expand file tree Collapse file tree 1 file changed +35
-1
lines changed Expand file tree Collapse file tree 1 file changed +35
-1
lines changed Original file line number Diff line number Diff line change @@ -75,8 +75,42 @@ Serializing Locks
7575The :class: `Symfony\\ Component\\ Lock\\ Key ` contains the state of the
7676:class: `Symfony\\ Component\\ Lock\\ Lock ` and can be serialized. This
7777allows the user to begin a long job in a process by acquiring the lock, and
78- continue the job in another process using the same lock::
78+ continue the job in another process using the same lock.
7979
80+ First, you may create a serializable class containing the resource and the
81+ key of the lock::
82+
83+ // src/Lock/RefreshTaxonomy.php
84+ namespace App\Lock;
85+
86+ use Symfony\Component\Lock\Key;
87+
88+ class RefreshTaxonomy
89+ {
90+ private object $article;
91+ private Key $key;
92+
93+ public function __construct(object $article, Key $key)
94+ {
95+ $this->article = $article;
96+ $this->key = $key;
97+ }
98+
99+ public function getArticle(): object
100+ {
101+ return $this->article;
102+ }
103+
104+ public function getKey(): Key
105+ {
106+ return $this->key;
107+ }
108+ }
109+
110+ Then, you can use this class to dispatch all that's needed for another process
111+ to handle the rest of the job::
112+
113+ use App\Lock\RefreshTaxonomy;
80114 use Symfony\Component\Lock\Key;
81115 use Symfony\Component\Lock\Lock;
82116
You can’t perform that action at this time.
0 commit comments