PythonQ 240-8XX Bedienungsanleitung Seite 620

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 768
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 619
Kapitel 9: MySQL-APIs 599
2. Rufen Sie mysql_thread_init() im Thread-Handler auf, bevor Sie irgend welche
MySQL-Funktionen aufrufen.
3. Rufen Sie im Thread mysql_thread_end() auf, bevor Sie pthread_exit() aufrufen.
Das gibt Speicher frei, der von MySQL-Thread-spezifischen Variablen benutzt wird.
Eventuell erhalten Sie Fehler wegen undefinierter Symbole, wenn Sie Ihren Client
mit mysqlclient_r linken. In den meisten allen liegt das daran, dass Sie die
Thread-Bibliotheken nicht auf der Link- / Kompilierzeile eingeschlossen haben.
9.4.9 libmysqld, die eingebettete MySQL-Server-Bibliothek
9.4.9.1
¨
Uberblick ¨uber die eingebettete MySQL-Server-Bibliothek
Die eingebettete MySQL-Server-Bibliothek erm¨oglicht es, einen MySQL-Server mit allen
Features innerhalb einer Client-Applikation laufen zu lassen. Die haupts¨achlichen Vorteile
sind erh¨ohte Geschwindigkeit und einfachere Verwaltung eingebetteter Applikationen.
9.4.9.2 Programme mit libmysqld kompilieren
Momentan m¨ussen alle unterst¨utzten Bibliotheken explizit aufgelistet werden, wenn Sie
mit -lmysqld linken. In Zukunft wird mysql_config --libmysqld-libs die Bibliotheken
benennen, um das zu erleichtern. Dar¨uber hinaus werden alle unterst¨utzten Bibliotheken
wahrscheinlich in libmysqld eingeschlossen werden, um dies noch weiter zu vereinfachen.
Die korrekten Flags zum Kompilieren und Linken eines threaded Programms m¨ussen be-
nutzt werden, selbst wenn Sie nicht direkt irgend welche Thread-Funktionen in Ihrem Code
aufrufen.
9.4.9.3 Ein einfaches Embedded-Server-Beispiel
Dieses Beispiel-Programm und makefile sollten ohne
¨
Anderungen auf einem Linux- oder
FreeBSD-System funktionieren. Bei anderen Betriebssystemen sind kleinere
¨
Anderungen
notwendig. Dieses Beispiel ist so angelegt, dass gen¨ugend Details dargestellt werden, um
die Problematik zu verstehen, ohne zu viel "Verwirrendes" einzubringen, das Teil einer
echten Applikation ist.
Um das Beispiel auszuprobieren, erzeugen Sie ein example’-Verzeichnis auf derselben
Ebene wie das mysql-4.0-Quell-Verzeichnis. Speichern Sie die example.c’-Quelle
und das GNUmakefile im Verzeichnis und lassen Sie GNU-‘make innerhalb des
example’-Verzeichnisses laufen.
example.c
/*
* Ein einfacher Beispiel-Client, der die eingebettete
* MySQL-Server-Bibliothek benutzt
*/
Seitenansicht 619
1 2 ... 615 616 617 618 619 620 621 622 623 624 625 ... 767 768

Kommentare zu diesen Handbüchern

Keine Kommentare