Actually, after researching a bit more, I think that the reason is that in another part of my code I also scheduleOnce the same method at a similar time and this may give troubles.
The last scheduleOnce overwrites any previous scheduleOnce of the same method, right?
Sorry for the big delay… After applying the same pattern in another scenario, I noticed that it works well, so the problem was in another part of my code.