La connection à xgsc se fait avec la fonction gsc_client(). Cette fonction alloue une structure pour le canal de communication et initialise la connection. La déconnection est automatique, et xgsc survit au client. Si le client qui désire tuer xgsc le fait avec la fonction gsc_close_connection(). Les exemples suivants montrent une connection suivit d'une déconnection en C et en Fortran.
#include <gop.h> int actual_status=0; main() { struct gop_connect *connect_gsc; char option[20]; int delay=1; int repeat=10; ... if (gsc_client(connect_gsc, actual_status, option, delay, repeat, verbose) != GOP_OK){...} actual_status = 1; ... if (gsc_quit(connect_gsc) != GOP_OK){...} }
program xxxx integer connect_gsc integer actual_status /0/ common / status_common / actual_status character*20 option[20] integer delay /1/ integer repeat /10/ integer status ... call gsc_client(connect_gsc, actual_status, option, delay, . repeat, verbose, status) if(status.ne.0) ... actual_status = 1 ... call gsc_quit(connect_gsc, status) if(status.ne.0) ... ... endLa fonction gsc_client exécute la commande système gsc suivie des options donnée par la chaîne de caractère option.
Comme le démarage de xgsc peut prendre du temps, le client attend que la socket soit créée. La présence de la socket est testée au maximum repeat fois avec un interval de temps donné en secondes entières de durée = delay [secondes]. Le niveau de verbosité du protocole de communication est initialisé avec la variable verbose: 0, 1, 2 et 3 à 9 (voir libgop.a).
Le flag actual_status indique par 1 que le client se croit connecté et par 0 qu'il n'est pas connecté. Ce flag global de déterminer la tactique de connection si la commande gsc_client est lancée plusieurs fois dans le même programme.