Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Deux ou vingt-deux threads peuvent être synchrones ou asynchrones. Un thread peut comprendre à la fois des opérations synchrones et asynchrones. Vous avez indiqué comment. Parallel ne sait pas comment inclure les parallèles.
Exemple : une fonction synchrone s'exécute dans le thread 1 et attend des données des threads 2, 3 et 4, tandis que les fonctions distribuées dans les threads 5, 6, 7 et 8 attendent des résultats.
Tous se lèvent et attendent le résultat. Maintenant, faites attention : que se passe-t-il si la fonction synchrone attend des données de son thread ? Et, à Dieu ne plaise, ces données dépendent de son résultat ?
Non, ce n'est pas tout.
Exemple : une fonction synchrone s'exécute dans le thread 1 et attend des données des threads 2, 3 et 4, tandis que les fonctions distribuées dans les threads 5, 6, 7 et 8 attendent des résultats.
Tous se lèvent et attendent le résultat. Maintenant, faites attention : que se passe-t-il si la fonction synchrone attend des données de son thread ? Et à Dieu ne plaise, ces données dépendent de son résultat ?
Ok, je vais répondre moi-même :
Le canevas se met à clignoter.
Je vais traduire ce qui vous a déjà été dit par un représentant de la société de développement MT :
Vous ne pouvez pas créer de fils à partir de MQL. Pas même avec WinAPI.
Vous ne pouvez le faire qu'en écrivant votre propre DLL.
Vous pouvez, MQL5\Include\WinAPI\processthreadsapi.mqh a un wrapper
HANDLE CreateThread(PVOID thread_attributes,ulong stack_size,PVOID start_address,PVOID parameter,uint creation_flags,uint &thread_id) ;
Mais que faire des pistes à travers MQL ? C'est pourquoi ils ont écrit que nous devons créer une DLL et travailler avec eux à cet endroit.
Exemple : une fonction synchrone s'exécute dans le thread 1 et attend des données des threads 2, 3 et 4, tandis que les fonctions distribuées dans les threads 5, 6, 7 et 8 attendent des résultats.
Tous se lèvent et attendent le résultat. Maintenant, faites attention : que se passe-t-il si la fonction synchrone attend des données de son thread ? Et à Dieu ne plaise, ces données dépendent de son résultat ?
Alexei Tarabanov:
Ok, je vais répondre moi-même :
Le canevas se met à clignoter.
Le surlignage n'a pas de sens.
Pour les autres pistes, jusqu'à ce que les données soient prêtes, on attendra. Rien ne clignotera.