IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi .NET Discussion :

Thread en delphi.net


Sujet :

Delphi .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 30
    Par défaut Thread en delphi.net
    Bonjour,
    Je cherche à faire une synchronisation sur une liste en delphi.net.
    Je peux avoir deux threads différent qui accède la même liste et je voulais savoir comment je pouvais le faire (genre semaphore) mais je sais pas en delphi.net.

    Merci

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 057
    Par défaut
    Regarde si la TThreadList existe en .NET, elle est fait pour ça !
    Sinon, TCriticalSection

    Ce sont des objets VCL, j'ignore si il existe en Merdasse.NET
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    La chose qui semble le plus s'approcher de la TThreadList serait la classe ThreadPool du namespace System.Threading.

    Bon après quoi qu'il en soit, il faut aller farfouiller à l'intérieur de ce namespace pour trouver ce que tu cherches car tout ce qui se rapporte aux Threads est à l'intérieur.

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 057
    Par défaut
    un ThreadPool,c'est pour gérer un ensembe de thread, c'est un peu lourd pour gérer par pour la communication inter-thread via un FIFO

    Il te faudrait surcharger une "System.Collections.ArrayList" et utilisé le mot clé lock ou par la classe System.Threading.Semaphore

    Quel est donc bien l'intérêt de Delphi.NET si on peut pas avoir un Borland.SyncObjs.TThreadList qui encapsule la merdasse.NET, ... je ne pensais pas que Delphi.NET était aussi éloigné de Delphi Win32 ... c'est vraiement apprendre un nouveau langage ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 30
    Par défaut
    En effet le thread pool me sert à rien dans mon cas ...
    La classe System.Threading.Semaphore, je n'ai pas trouvé dans delphi.net (2006) mais il y a le System.Threading.ReaderWriterLock qui a l'air pas mal !

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ShaiLeTroll
    j'ignore si il existe en Merdasse.NET
    Tu as tout à fait le droit de ne pas apprécier .NET, mais n'en dégoûte pas les autres

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 30
    Par défaut
    Citation Envoyé par Laurent Dardenne Voir le message
    Tu as tout à fait le droit de ne pas apprécier .NET, mais n'en dégoûte pas les autres
    Je suis tout à fait d'accord, surtout que c'est pas parce que c'est microsoft que sa doit forcément être de la m....
    Il y a quand même des points positifs et négatif comme partout !!
    Par contre je suis pas sûr que le delphi soit une bonne chose mais bon il fallait bien qu'ils se mettent au goût du jour... Pour ma part j'aurais préféré faire en C# mais je n'avais pas trops le choix

  8. #8
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 057
    Par défaut
    Citation Envoyé par Laurent Dardenne Voir le message
    Tu as tout à fait le droit de ne pas apprécier .NET, mais n'en dégoûte pas les autres
    Désolé, pour moi faire du .NET avec du Delphi est une hérésie !

    Citation Envoyé par laurent_r Voir le message
    Je suis tout à fait d'accord, surtout que c'est pas parce que c'est microsoft que sa doit forcément être de la m....
    Oh ce n'est pas parce que MicroSoft, c'est juste que je n'aime pas ce concept d'assistanat de développeur qu'introduit le .NET sans la réelle efficience du mutli-plateforme via cocoa# ou mono, alors que Java le fait déjà depuis bien longtemps ... j'ai du faire des objets COM pour de l'inter-opérabilité avec des partenaires en .NET, il n'était même pas capable de me fournir leur convention d'appel qui est safecall, ce qui influe sur la manière de créer ses fonctions dans l'éditer de TLB de Delphi 7, et à chaque fois que j'ai travaillé avec des collaborateurs en .NET, que ce soit en COM ou en WebService, ils utilisent une tétra-chier de produit MS avec lesquels, il est très difficile de communiquer sans disposer soit même du FrameWork ... c'est comme si les développeurs avaient oubliés comment il faisait il y a encore quelques années c'est à dire qu'avec un trombone on faisait décoler une fusée alors que maintenant avec un semi-remorque c'est à peine si l'on peut expédier une épingle ...

    Citation Envoyé par laurent_r Voir le message
    ... Pour ma part j'aurais préféré faire en C# mais je n'avais pas trops le choix
    Entièrement d'accord, quite à apprendre le Framework .NET autant le faire avec un langage nativement étuidié pour !
    Vous noterez que j'ai argumenté toutes mes propositions avec la MSDN, si je ne fait pas de C# ou de Delphi.NET, je sais quand même m'y retrouver car je tiens à me tenir au courant de cet outil qui pourrait me servir un jour dans ma carrière ...

    Sinon pour en revenir au sujet, ce System.Threading.ReaderWriterLock doit être l'équivalent du TMultiReadExclusiveWriteSynchronizer de Delphi

    Pour System.Threading.Semaphore apparait en Visual Studio 2005/.NET Framework 2.0, Delphi 2006 est en 1.1, il faut passer à Delphi 2007 pour le 2.0 ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 30
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    ce concept d'assistanat de développeur qu'introduit le .NET sans la réelle efficience du mutli-plateforme via cocoa# ou mono, alors que Java le fait déjà depuis bien longtemps ...
    Je ne suis pas un admirateur de .net (je me tiens aussi au courant des nouvelles tendances) mais je tiens à dire que l'on peut quand même apprécier l'assistance au développeur en général (se qui est déjà fait par des librairies qui évitent de devoir réinventer la roue à chaque fois (merci au langage Orienté Objet) et aussi par les interfaces graphiques de MS qui permettent aussi de faciliter l'accès/gestion base de donnée et création de UI).
    Est le .net contrairement à Java est de rendre ou essayé de rendre différent langage compatible entre eux autour d'un même framework. Java fais du multi-plateforme mais avec le même langage!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Delphi.Net] Erreur de Cast ?
    Par SubZero2 dans le forum Delphi .NET
    Réponses: 15
    Dernier message: 11/07/2005, 17h00
  2. [Delphi.NET][ActiveX][javascript]ouverture d'une feuil excel
    Par lolhangman dans le forum Delphi .NET
    Réponses: 13
    Dernier message: 23/06/2005, 10h13
  3. [Delphi.Net] probleme de gestion de deux pages
    Par nivet dans le forum Delphi .NET
    Réponses: 4
    Dernier message: 17/06/2005, 14h12
  4. [Delphi.NET][SDK] Comment interpréter System.Security.SecurityException?
    Par Laurent Dardenne dans le forum Delphi .NET
    Réponses: 4
    Dernier message: 07/04/2005, 12h43
  5. [C#] Convertion de structure vers Delphi .NET
    Par Laurent Dardenne dans le forum Windows Forms
    Réponses: 21
    Dernier message: 08/01/2005, 02h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo