Après « l'exemple d'école » des Types Abstraits de données : la pile, on présente « l'exemple d'école » du parallélisme : il s'agit de l'exemple des lecteurs-écrivains, qu'on traite ici avec une priorité égale pour les lecteurs et les écrivains.
1. La spécification du problème
La ressource
Une ressource (simple) se présente par le réseau :

A l'initialisation, on a P jetons sur la place marquée P.
Le test sur la ressource
Le test "emprunte" un jeton dans la réserve de la ressource : il doit y en avoir un, et quand il y en a un il est replacé aussitôt après qu'on l'a pris.

La ressource double
Dans la ressource double on partage la réserve des jetons de la ressource entre deux places :

Les flèches donnent l'ordre de priorité de déclenchement des transitions – dans les deux cas où il pourrait y avoir un choix. Par reserve, on vide d'abord la réserve des Q jetons, puis celle des P-Q jetons restants. Par free, on réapprovisionne d'abord cette dernière, puis la première.
Le test sur la ressource double
Ainsi, la place initialement marquée Q est vide si et seulement si au moins Q réservations ont eu lieu sans libérations correspondantes.

Le test porte uniquement sur la place marquée Q : la tâche qui test la ressource est donc bloquée dès que Q points d'entrée de la ressource sont occupés.