AGB  ·  Datenschutz  ·  Impressum  







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

Großes Problem mit Thread

Ein Thema von EWeiss · begonnen am 26. Okt 2010 · letzter Beitrag vom 26. Okt 2010
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

Großes Problem mit Thread

  Alt 26. Okt 2010, 12:31
sag mir mal bitte jemand wo der unterschied liegt..

Ich erstelle eine Class
TMyclass = class(TComponent) und
inherited Create(AOwner); bei create..

Wenn ich diese nun mit einer NET Anwendung debugge funktioniert es beim ersten start ohne probleme.
Wird create abermals aufgerufen nach dem alle Threads Ordnungsgemäß beendet wurden
stürzt meine Anwendung ab.
Was ich festgestellt habe ich kann dann in create nicht jede einzelne zeile beim debuggen ansteuern.
springt nur in die Zeile wo ich einen Breakpoint gesetzt habe.

Definiere ich jetzt die class einfach
myclass = class funktioniert alles soweit ich kann auch wieder jede einzelne zeile anspringen.

Allerdings bekomme ich jetzt diese Warnung!
[DCC Warnung] mypass.pas(111): W1055 PUBLISHED verursachte, dass RTTI ($M+) zu Typ 'TMyClass' hinzugefügt wurde

Kann mir jemand helfen und sagen warum das passiert und wo der Unterschied liegt.
Wie kann ich das problem beseitigen.?

Es scheint das hier ein Multithread problem vorliegt.

gruss

Geändert von EWeiss (26. Okt 2010 um 12:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 12:41
Die Meldung
Zitat:
[DCC Warnung] mypass.pas(111): W1055 PUBLISHED verursachte, dass RTTI ($M+) zu Typ 'TMyClass' hinzugefügt wurde
rührt daher, dass Du vermutlich die Klassenvervollständigung (STRG-SHIFT-C) verwendet hast. Diese legt automatisch einen published-Abschnitt in Deiner Klasse an. Dann musst Du nur das Schlüsselwort published wieder aus der Klassendeklaration löschen. Aber das eigentliche Problem habe ich nicht verstanden, kannst Du mal etwas mehr Code posten?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 12:48
Die Meldung
Zitat:
[DCC Warnung] mypass.pas(111): W1055 PUBLISHED verursachte, dass RTTI ($M+) zu Typ 'TMyClass' hinzugefügt wurde
rührt daher, dass Du vermutlich die Klassenvervollständigung (STRG-SHIFT-C) verwendet hast. Diese legt automatisch einen published-Abschnitt in Deiner Klasse an. Dann musst Du nur das Schlüsselwort published wieder aus der Klassendeklaration löschen. Aber das eigentliche Problem habe ich nicht verstanden, kannst Du mal etwas mehr Code posten?
Der Code ist eigentlich belanglos..
Aber gut hier ist das create!

Delphi-Quellcode:
constructor TBASSVis.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);

end;
spätestens bei LBStyle := TStringList.Create;

Kracht es dann .
Eigentlich sollte ich wenn man mit F7 debuggen tut in jede zeile springen können das tut er aber beim
zweiten mal dann nicht.
Stürzt aber in dieser dann ab "LBStyle"

Das passiert mir aber nur unter NET mit Delphi, VB, C++ habe ich keine probleme.

Ändere ich die Classe um einfach auf class dann funktioniert es bis auf die Warnung.

Was ist jetzt anderes bzw .. der unterschied zwichen Class und Class(TComponent)
das der Thread quasi geblockt wird und ich nicht mehr in den zeilen debuggen kann?

gruss

Geändert von EWeiss (26. Okt 2010 um 13:51 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 12:56
Reden wir hier von Prism, oder kann Delphi 2010 für .NET kompilieren? Mir fällt auf den ersten Blick jedenfalls nichts besonderes auf, sofern die ganzen Valiablen(WinampMenu, WStyleList etc.) private Felder Deiner Klasse sind.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 13:00
Reden wir hier von Prism, oder kann Delphi 2010 für .NET kompilieren? Mir fällt auf den ersten Blick jedenfalls nichts besonderes auf, sofern die ganzen Valiablen(WinampMenu, WStyleList etc.) private Felder Deiner Klasse sind.
Ich kompiliere nicht für NET sondern debugge eine NET Anwendung welche mit meiner DLL arbeitet
Diese Anwendung ist Multithread und BassVis von Delphi ja auch deshalb hat mich gewundert das ich plötzlich nicht mehr in jede zeile
springen und diese auswerten kann.

gruss Emil
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 13:02
Zitat:
Ich kompiliere nicht für NET sondern debugge eine NET Anwendung welche mit meiner DLL arbeitet
*Puh* dann muss ich leider passen, da überhaupt keine Erfahrungen damit, sry
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 13:06
Zitat:
Ich kompiliere nicht für NET sondern debugge eine NET Anwendung welche mit meiner DLL arbeitet
*Puh* dann muss ich leider passen, da überhaupt keine Erfahrungen damit, sry
Aber eins kannst mir noch sagen was ist denn der Unterschied zwichen class und class(TComponent) ?
Das iritiert mich etwas da es mit der class funktioniert und class(TComponent) nicht.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 13:15
Eine Klasse ohne Angabe des Vorfahren erbt direkt von TObject. Und zu TComponent ist die Referenz recht ausführlich.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: Großes Problem mit Thread

  Alt 26. Okt 2010, 13:50
Eine Klasse ohne Angabe des Vorfahren erbt direkt von TObject. Und zu TComponent ist die Referenz recht ausführlich.
Danke dir

gruss
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:15 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