Dienstleistungen. Sind sie schon einsatzbereit?

 

Baujahr 1961.

Im Editor habe ich eine neue Programmansicht - Service - erstellt.

Dienstleistungen


In OnStart habe ich es aufgeschrieben:

void OnStart()
  {
//---
   Print(TimeTradeServer());
  }

Dann habe ich den Dienst begonnen:

Starten des Dienstes

und sofort das Ergebnis:

2018.12.16 18:35:56.679 1       2018.12.16 18:35:56


Im Allgemeinen funktioniert es. Aber was für eine Kreatur es ist, weiß ich noch nicht :)

 
Tatsächlich fragen die Leute schon - hier ist der englische Abschnitt vonhttps://www.mql5.com/en/forum/294855 (kurz, da es noch nicht viele Informationen gibt).
Metatrader 5 Plugin
Metatrader 5 Plugin
  • 2018.12.15
  • www.mql5.com
Hi everyone. I want to add a new feature to metatrader 5 platform. How can i do this...
 
Bislang sind die Dienste so etwas wie ein Drehbuch. Es ist zwar möglich, dass die Darstellung in Form einer Schrift eine vorübergehende technische Notlösung ist.
 
Vladimir Karputov:
Bislang sind die Dienste so etwas wie ein Drehbuch. Es ist jedoch möglich, dass es sich bei der Schriftdarstellung um eine vorübergehende technische Notlösung handelt.

Fügen Sie einen OnTimer()-Handler hinzu und die Welt wird sich verändern

 
Rashid Umarov:

OnTimer()-Handler hinzufügen und die Welt wird sich verändern

Hmmm... Und alles, was OnTick() versuchte, war es zu füttern :)

 
Werden die Dienststellen auf Anfrage gleichzeitig Zugang zu Angeboten von verschiedenen Konten haben?
 

Es gibt keine OnTimer oder OnTick in den Diensten. Nur OnStart.

Dabei handelt es sich um ein spezielles Programm für Hintergrundschleifen (Dateneinspeisungen, Analysen, externe Links usw.), nicht um einen Ersatz für EA.


Beta 1963 ist erschienen, Sie können über das Menü aktualisieren.

 
Hier liegt also der Konflikt mit den alten EA-Codes, die durch onstart geschrieben werden - warum wird nicht eine neue Funktion eingeführt: OnServis() zum Beispiel
 
Aleksey Semenov:
deshalb gibt es einen Konflikt mit alten EA-Codes, die durch onstart geschrieben werden - weshalb eine neue Funktion: OnServis() zum Beispiel nicht eingeführt wird

Verwenden Sie *. mqproj-Projekte und geben Sie dort den Programmtyp an.

 

Ich würde gerne einen gemeinsamen Speicher für MT-Programme in Diensten deklarieren können. Damit sie darüber kommunizieren können. Wie in DLL.

So dass OnChartEvent() funktioniert.

 
Renat Fatkhullin:

Verwenden Sie Projekte *.mqproj und geben Sie dort den Programmtyp an.

Projekte sind nicht sehr praktisch, es gibt keine Möglichkeit, alles nach Ordnern zu sortieren. Und es gibt keine Möglichkeit, Code für zwei Plattformen gleichzeitig zu entwickeln.

Vielleicht verstehe ich etwas nicht, natürlich.