Hello tout le monde

Le contexte:
J'ai une grille (DataGrid de base du sdk) qui comprend environ 30 colonnes.
Toutes les secondes, je fais un appel RIA que me retourne entre 0 et 5 objets en moyenne. Ces objets sont soit rajoutés à la grille, soit déclenchent un update de la ligne si l'objet est déjà présent dans la grille.
La grille est assez lourde avec des converters pour gérer la couleur de la police et la couleur de fond suivant certaines propriétés de l'objet, et des formats.
Sous certaines conditions, je dois déclencher la lecture d'un MP3 à la réception d'un objet en particulier.

Problème: Il arrive que la lecture du son intervienne plusieurs secondes voire dizaines de secondes après l'appel à la méthode Play du MediaElement.

Si j'ai bien compris ce que m'a raconté David Catuhe, SL entasse les actions à effectuer dans une queue et les exécute au fur et à mesure qu'il peut.

Question: Est-ce qu'il y a une notion de priorité dans cette queue? Exemple: je reçois mon update, cela déclenche une mise à jour de ma grille et une lecture du son. Sauf qu'avant que SL ait pu lire ce son, j'ai un nouvel update. Si on suppose que l'UI est prioritaire, alors la lecture du son peut être repoussé tant que l'UI a du boulot. Ce qui expliquerai le retard constaté.

J'ai tout compris? un peu? pas du tout?

Merci