AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

CreateThread

Ein Thema von CReber · begonnen am 15. Mai 2004 · letzter Beitrag vom 4. Apr 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von CReber
CReber

Registriert seit: 26. Nov 2003
Ort: Berlin
343 Beiträge
 
Delphi 2006 Professional
 
#1

CreateThread

  Alt 15. Mai 2004, 19:42
Code:
procedure ping(Item:integer);
  var ip:string;
      i:integer;
begin
  ip:=Form1.ListView1.Items[Item].SubItems[0];
  if PortPresent(ip,80)=True then
    Form1.ListView1.Items[Item].SubItems[1]:='Online'
  else
    Form1.ListView1.Items[Item].SubItems[1]:='Offline'
end;


procedure TForm1.Button3Click(Sender: TObject);
  var i:integer;
      id:dword;
begin
  for i:=0 to ListView1.Items.Count-1 do
    begin
      CreateThread(nil,0,addr(ping),nil,0,id);
    end;
end;
wie kann ich einen parameter übergeben bei der CreateThread Funktion? In meinem schlauen Büchlich steht mit einem Pointer auf die Variable aber mit

CreateThread(nil,0,addr(ping),@Item,0,id);

funktioniert es trotzdem nicht ?! Need help

Und wenn mir einer sagen kann wie ich einstellen kann das max. 15 Threads an sein sollen, wäre ich auch sehr erfreut )


für fehler und schrift, haftet der stift ! sry habs grad eilig
Christian Reber
  Mit Zitat antworten Zitat
Benutzerbild von Mirilin
Mirilin

Registriert seit: 21. Dez 2002
Ort: Lenzburg
861 Beiträge
 
Delphi 6 Professional
 
#2

Re: CreateThread

  Alt 15. Mai 2004, 19:48


was allgemeines : Du solltest BeginThread anstelle von CreateThread verwenden.

Was funktioniert denn nicht? Sagt er was? ...

noch ein Link

mfg Tobias
Tobias
Die Physik ist für die Physiker eigentlich viel zu schwer.
  Mit Zitat antworten Zitat
MasterC

Registriert seit: 9. Jan 2004
Ort: Krefeld
369 Beiträge
 
Delphi 2005 Personal
 
#3

Re: CreateThread

  Alt 15. Mai 2004, 19:49
Warum verwendest du keine Thread Komponente? Ich benutze BMD Thread.

http://www.torry.net/vcl/system/thre...lphithread.zip
Christian H.
www.Future-Coding.de
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: CreateThread

  Alt 15. Mai 2004, 19:50
Kuck dir mal mein Tutorial dazu an: http://tutorials.luckie-online.de Lad dir gleich das Zip-Archiv runter mit den Demos! Prinzip ist folgendes: Du übergibst einen Zeiger auf eine Record-Struktur.

Und dann lies bitte vorallem den Absatz:
Zitat von Luckie's Thread-Tutorial:
In einem Delphi-Programm sollten sie nie die Funktion CreateThread direkt aufrufen. Benutzen sie stattdessen die
Funktion BeginThread. Grund: BeginThread kapselt zwar nur die API-Funktion CreateThread, setzt aber zusätzlich
noch die globale Variable IsMultiThread und macht somit den Heap thread-sicher.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Mirilin
Mirilin

Registriert seit: 21. Dez 2002
Ort: Lenzburg
861 Beiträge
 
Delphi 6 Professional
 
#5

Re: CreateThread

  Alt 15. Mai 2004, 19:50


muss man denn für alles zu einer Komponente greifen ?

mfg Tobias
Tobias
Die Physik ist für die Physiker eigentlich viel zu schwer.
  Mit Zitat antworten Zitat
Benutzerbild von CReber
CReber

Registriert seit: 26. Nov 2003
Ort: Berlin
343 Beiträge
 
Delphi 2006 Professional
 
#6

Re: CreateThread

  Alt 15. Mai 2004, 19:51
Ich will die Variable i übergeben ! Laut meinem Buch ist das der Argumenteparameter:

CreateThread(nil,0,addr(ping),nil,0,id);

da hab ich also @i reingeschrieben um, meinem verständnis zufolge, auf i hinzuweisen sodass diese übergeben wird. leider ist dann in der procedure Item leider immernoch 0 trotzdem ich beispielsweise eine 5 übergeben hab!

Ich habe eigentlich nciht vor jetzt wieder was anderes zu verwenden will endlich mal nach dem buch arbeiten ^^
Christian Reber
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: CreateThread

  Alt 15. Mai 2004, 19:53
Was Mirilin und ich geschrieben haben, hast du aber gelesen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von CReber
CReber

Registriert seit: 26. Nov 2003
Ort: Berlin
343 Beiträge
 
Delphi 2006 Professional
 
#8

Re: CreateThread

  Alt 15. Mai 2004, 19:59
löl ja klar ! aber dein tutorial ist kein tutorial sondern eher einer riesiger glossar der das verständnis ein wenig verbessern soll.. ich weiß immernoch nicht wie ich etwas bei threads übergeben kann! mit dem TThread Objekt erklärst du ja auch aber ich weiß ja wie es funktioniert aber nicht wie ich eine Variable übergebe...

PS: Und ob ich nun CreateThread oder BeginThread benutze is für mich völlig egal weil ich nur verstehen will wie das funktioniert
Christian Reber
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: CreateThread

  Alt 15. Mai 2004, 20:09
Zitat von hOnkibOnk:
aber dein tutorial ist kein tutorial sondern eher einer riesiger glossar der das verständnis ein wenig verbessern soll..
Hallo? Wie darf ich denn das jetzt verstehen?

Aber die Demos hast du dir mal angekuckt? Insbesondere das Demo "ThreadTimes"?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von CReber
CReber

Registriert seit: 26. Nov 2003
Ort: Berlin
343 Beiträge
 
Delphi 2006 Professional
 
#10

Re: CreateThread

  Alt 15. Mai 2004, 20:12
Zitat von Luckie:
Zitat von hOnkibOnk:
aber dein tutorial ist kein tutorial sondern eher einer riesiger glossar der das verständnis ein wenig verbessern soll..
Hallo? Wie darf ich denn das jetzt verstehen?

Aber die Demos hast du dir mal angekuckt? Insbesondere das Demo "ThreadTimes"?
Mmh wo gibs die ThreadTimes Demo? Bei mir ist sie nicht im Demo Ordner sondern nur die SortierDemo...

Das mit dem Glossar meine ich so das ein Leihe das nicht wirklich versteht sondern nur jemand der schon lange in der Materie drin ist... Viele Sachen sind einfach zu undeutlich erklärt. Das ist einfach meine Meinung Steht alles drin wie es funktioniert müsste aber wenig bis gar keine Beispiele z.b. für die Aufrufe von Threads.
Christian Reber
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz