Le droit de grève

26. mai 2009

Sans vouloir polémiquer (non ce n’est pas mon genre), je suis atterré par la bêtise humaine. Pour moi le droit de grève correspond à la possibilité légale de ne pas travailler pour exprimer son désaccord.

En France, ce droit s’est transformé en droit de faire chier. En gros plus on est mécontent, plus on a le droit de les briser à tout le monde. Au préalable, lors d’une grève on essayait de faire pression sur le ou les responsables. Aujourd’hui on essaye surtout de bien mettre le boxon en suivant l’équation : plus on fait caguer plus on parle de moi plus j’ai de chance de l’emporter.

Soit. Donc la prochaine fois que j’ai des revendications, je vais aller me mettre à un feu rouge et m’allonger sur la voie. J’ai le droit, je suis en grève. Et si vraiment je suis en colère, je péterai les genoux des passants. C’est normal je suis en grève.

Le top du top c’est la grève des étudiants qui bloquent les facs. La on touche au divin. Des professeurs barbus qui portent des pantalons en velours côtelés (ou ça un cliché?) ont eu la superbe idée de faire grève en faisant bloquer les facultés par les étudiants. Comme ça ces derniers ne peuvent plus aller en cours ni passer leurs examens. Ben oui, ils sont en grève mais ils innovent : plutôt que d’emmerder les autres, ils se font chier eux-mêmes. Pour leur prochaine grève, je leur propose de brûler leur appartement ou de passer leurs orteils au hachoir. Je suis sûr que ca marchera encore mieux.

Philo

Le truc à la con du jour : Comportement étrange du FileSystemWatcher

9. mai 2009

Dans le cadre de Nova, j’ai du utiliser le FileSystemWatcher pour tracer les modifications sur un fichier donné. Jusque là tout va bien me direz vous.

Toutefois, j’ai eu un comportement bien étrange : chaque fois que je modifiais le fichier surveillé je recevais deux événements Changed de la part du watcher.

Tel un docteur House de l’informatique, je me suis donc livré à un raisonnement différentiel (mon dieu que je me la pète).

Voici donc les symptômes:

  • Le double événement est systématique
  • Il peut parfois y en avoir trois
  • Si le NotifyFilter est sur Name ou Size, le problème disparait
  • Aucun bug ne semble connu sur le sujet
  • Si le fichier n’est pas sur mon bureau mais dans un répertoire d’un disque annexe, le problème disparait

A partir de cela j’ai finalement trouvé le coupable : Windows! En effet lors de la modification de mon fichier, Windows lance ce cher indexeur et ajoute donc une notification. Si en plus j’ai un anti-virus actif c’est coup triple.

C’est le fait que sur un disque annexe je n’ai pas le problème qui m’a mit la puce à l’oreille. En effet, Windows est configuré pour n’indexer que mon profil et pas des répertoires extérieurs.

Connaissant le coupable, le traitement est relativement simple. Je me suis fait une petite variable de type DateTime qui stocke la date de dernière modification de mon fichier. Si cette valeur est égale à la LastAccessTime de mon fichier je ne fais rien sinon je lance mon code:

            DateTime previous = lastAccessedDates[sender as FileSystemWatcher];
            FileInfo fileInfo = new FileInfo(e.FullPath);

            if (fileInfo.LastAccessTime > previous)
            {
                lastAccessedDates[sender as FileSystemWatcher] = fileInfo.LastAccessTime;
               // Code de traitement
            }

Windows Forms, .Net