Je suis un bioinformaticien et je me suis récemment retrouvé coincé dans un problème qui nécessite des scripts pour accélérer mon processus. Nous avons un logiciel appelé PHASE et Command que je tape dans ma ligne de commande pour tirer le logiciel est ./PHASE test.inp test.out où PHASE est le nom du programme et test.ip […]
Je dois implémenter un mécanisme en C sur SOLARIS 9 SPARC afin de permettre une communication interprocessus. En bref, je dois implémenter un programme multithread dans lequel le père du thread qui reçoit une fois un signal, ou ce que vous voulez, doit déclencher un ensemble de threads chargés de crypter les fichiers. Je ne […]
J’ai un thread de travail qui obtient du travail de pipe. Quelque chose comme ça void *worker(void *param) { while (!work_done) { read(g_workfds[0], work, sizeof(work)); do_work(work); } } Je dois implémenter une timer de 1 seconde dans le même thread pour certaines tâches de comptabilité. Voici ce que je pense: void *worker(void *param) { prev_uptime […]
Pour de nombreuses raisons, je souhaiterais utiliser des sockets de domaine unix pour IPC entre deux processus. Chaque processus réagit aux événements asynchrones d’un type spécifique du monde extérieur en écrivant sur le socket et en communiquant cet événement au second processus. En même temps, chaque processus doit également lire les données provenant de l’autre […]
Comme je suis en train de faire ce projet uniquement en C, je n’ai jusqu’à ce point utilisé que mon serveur Web en tant qu’application mono-thread. Cependant, je n’en veux plus! J’ai donc le code suivant qui gère mon travail. void BeginListen() { CreateSocket(); BindSocket(); ListenOnSocket(); while ( 1 ) { ProcessConnections(); } } Maintenant, […]
Dans linux, tout le processus se termine lorsque le thread principal se termine, peu importe comment il se termine, par la fonction exit () ou retourne de main. Si le thread principal revient de main (), il retournera au “runtime C” appelé crt.o ou quelque chose comme ça. Dans le crt.o, dont le code c […]
Un de mes collègues m’a demandé d’écrire un devoir pour lui. Bien que cela ne soit pas trop éthique, je l’ai fait, je plaide coupable. Voici comment le problème se pose: Écrivez un programme en C où la séquence 1 2 + 2 2 + … + n 2 est calculée. Supposons que n soit […]
En supposant que j’ai ouvert dev / poll comme mDevPoll , est-ce que mDevPoll appeler le code comme ça struct pollfd tmp_pfd; tmp_pfd.fd = fd; tmp_pfd.events = POLLIN; // Write pollfd to /dev/poll write(mDevPoll, &tmp_pfd, sizeof(struct pollfd)); … simultanément à partir de plusieurs threads, ou dois-je append ma propre primitive de synchronisation autour de mDevPoll […]
Je fais un projet avec le threading dans UNIX et C ++. Fondamentalement, il y a un thread producteur et 5 threads consommateurs. Le thread producteur ajoute des nombres incrémentés dans une queue à des moments aléatoires, et les threads consommateurs interrogent le q essayant de le supprimer. Pour une raison quelconque, mon q.size () […]
Selon ce document sur le multithreading, il est obligatoire d’appeler xmlInitParser() avant d’utiliser la bibliothèque simultanément. Voici le problème. J’ai codé une bibliothèque (pas un exécutable) en utilisant libxml2 et cela devrait garantir la simultanéité. J’ai donc décidé d’appeler la fonction init sur la fonction init de ma bibliothèque. Cependant, le document indique que la […]