0

Sous Mac OS X, je peux tirer parti de plus d'un cœur en utilisant GCD (Grand Central Dispatch). Quel est l'équivalent pour un programme Visual Basic?Grand Central Dispatch pour Visual Basic?

+0

Votre question serait améliorée si vous expliquiez exactement ce que GCD fait. –

+1

[Il semble que vous le pouvez.] (Http://developer.apple.com/technologies/mac/snowleopard/gcd.html) –

+0

Visual Basic .NET? Le [Parallel Framework] (http://en.wikipedia.org/wiki/Parallel_Extensions) est probablement l'équivalent le plus proche. –

Répondre

1

Le filetage dans VB.NET peut être très simple. Tout ce qui précède est de faire exécuter une fonction dans son propre thread.

est ici la fonction appelée:

Private Shared Sub GetWebpage() 
     Dim URL As String = ConfigurationManager.AppSettings("AppCacheURL") 
     Dim REQ As System.Net.HttpWebRequest = System.Net.WebRequest.Create(URL & "?Task=PopulateURLCache&Payload=App_Start") 
     REQ.GetResponse() 
End Sub 

Ceci est un exemple simplifié d'un appel asynchrone à une fonction qui déclenche une requête HTTP vers une page Web. Le code d'origine est un peu plus complexe avec la gestion et la journalisation des erreurs, mais il permet essentiellement d'accéder à une page aspx de style "keep alive" sans ralentir l'application appelante. (Le feu et oublier)

Si vous avez besoin d'un cadre ou d'une bibliothèque pour atteindre vos objectifs, jeter un oeil à:

0

Vous devriez regarder à PLINQ et le Task Parallel Library, les deux qui peuvent être utilisés pour utiliser le nombre de cœurs disponibles dans un ordinateur hôte pour perforer opérations liées à la CPU.

Joseph Albahari a un great tutorial sur l'utilisation de techniques de programmation parallèle (en C#), mais les mêmes concepts s'appliquent à VB.NET.

Questions connexes