InglésFrancésEspañol

icono de página de OnWorks

rrdthreads: en línea en la nube

Ejecute rrdthreads en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando rrdthreads que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


rrdthreads: disposiciones para vincular la biblioteca RRD para su uso en programas multiproceso

SINOPSIS


El uso de librrd en programas multiproceso requiere algunas precauciones adicionales, ya que el RRD
la biblioteca en su forma original no era segura para subprocesos en absoluto. Este documento describe
requisitos y trampas en la forma de utilizar la versión multiproceso de librrd en su
propios programas. También da pistas para el desarrollo futuro de RRD para mantener el hilo de la biblioteca
segura.

Actualmente, solo algunas operaciones RRD se implementan de forma segura para subprocesos. Todos terminan en
el sufijo habitual "" _r "".

DESCRIPCIÓN


Para utilizar librrd en programas de subprocesos múltiples, debe:

· Vincular con biblioteca_th en lugar de biblioteca (use "-lrrd_th" al vincular)

· Utilice las funciones "" _r "" en lugar de las funciones API normales

· No utilice ninguna especificación de tiempo al estilo. Analizar estas especificaciones de tiempo es
terriblemente no seguro para subprocesos.

· Nunca use funciones que no sean * "_ r" a menos que esté explícitamente documentado que la función es
seguro para la pisada.

· Cada hilo DEBE llamar a "rrd_get_context ()" antes de su primera llamada a cualquier "librrd_th"
función para configurar datos específicos del hilo. Esto no es estrictamente necesario, pero
es la única forma de probar si esta función puede realizar la asignación de memoria.
De lo contrario, el programa puede morir con un SIGSEGV en una situación de poca memoria.

· Siempre llame a "rrd_error_clear ()" antes de cualquier llamada a la biblioteca. De lo contrario, la llamada
puede fallar debido a algún error anterior.

NOTAS PARA RRD COLABORADORES
Se deben seguir algunas precauciones al desarrollar RRD a partir de ahora:

· Utilice únicamente funciones seguras para subprocesos en el código de la biblioteca. Muchas funciones de libc de uso frecuente no son
a salvo de amenazas. Tenga cuidado en las siguientes situaciones o cuando utilice la siguiente biblioteca
funciones:

· Deben evitarse las llamadas directas a "strerror ()": utilice "rrd_strerror ()" en su lugar,
proporciona un mensaje de error por hilo.

· Las familias de funciones "getpw *", "getgr *", "gethost *" (y algunas más "get *"
funciones) no son seguras para subprocesos: utilice las variantes * "_ r"

· Funciones de tiempo: "asctime", "ctime", "gmtime", "localtime": usa variantes * "_ r"

· "Strtok": use "strtok_r"

· "Tmpnam": use "tmpnam_r"

· Muchos otros (búsqueda de documentación)

· Un archivo de encabezado llamado rrd_is_thread_safe.h se proporciona que funciona con GNU
C-preprocesador para "envenenar" algunas de las funciones no seguras para subprocesos más comunes utilizando el
Directiva "#pragma GCC veneno". Simplemente incluya este encabezado en los archivos fuente que desee
Manténgase seguro para subprocesos.

· ¡No introduzca variables globales!

Si realmente tiene que usar una variable global, puede agregar un nuevo campo al
estructura "rrd_context" y modificar rrd_error.c, rrd_thread_safe.c y
rrd_non_thread_safe.c

· No utilice "getopt" o "getopt_long" en * "_ r" (ni directa ni indirectamente).

"getopt" utiliza variables globales y se comporta mal en una aplicación multiproceso cuando
llamado al mismo tiempo. En su lugar, proporcione una función * _r tomando todas las opciones como función
parámetros. Puede proporcionar argumentos argc y ** argv para argumentos de longitud variable
liza. Consulte "rrd_update_r" como ejemplo.

· ¡No utilice la función "rrd_parsetime"!

Utiliza muchas variables globales. Puede utilizarlo en funciones no diseñadas para
seguro para subprocesos, como en las funciones que envuelven la versión "_r" de alguna operación (por ejemplo,
"rrd_create", pero no en "rrd_create_r")

ACTUALMENTE IMPLEMENTADO HILO SEGURA Las funciones
Actualmente existen variantes seguras para subprocesos de "rrd_update", "rrd_create", "rrd_dump",
"rrd_info", "rrd_last" y "rrd_fetch".

Use rrdthreads en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    PostInstaladorF
    PostInstaladorF
    PostInstallerF instalará todos los
    software que Fedora Linux y otros
    no incluye por defecto, después
    ejecutando Fedora por primera vez. Su
    fácil para ...
    Descargar PostInstallerF
  • 2
    rastro
    rastro
    El proyecto strace se ha trasladado a
    https://strace.io. strace is a
    diagnóstico, depuración e instrucción
    rastreador de espacio de usuario para Linux. Esta usado
    para monitorear un...
    Descargar seguimiento
  • 3
    GUI de extracto de gMKV
    GUI de extracto de gMKV
    Una GUI para la utilidad mkvextract (parte de
    MKVToolNix) que incorpora la mayoría (si
    no todas) la funcionalidad de mkvextract y
    Utilidades mkvinfo. Escrito en C#NET 4.0,...
    Descargar gMKVExtractGUI
  • 4
    Biblioteca JasperReports
    Biblioteca JasperReports
    La biblioteca JasperReports es la
    el código abierto más popular del mundo
    inteligencia empresarial y generación de informes
    motor. Está completamente escrito en Java.
    y es capaz de ...
    Descargar la biblioteca JasperReports
  • 5
    Libros Frappe
    Libros Frappe
    Frappe Books es una fuente libre y abierta
    software de contabilidad de escritorio que es
    simple y bien diseñado para ser utilizado por
    pequeñas empresas y autónomos. Eso'...
    Descargar Libros de Frappé
  • 6
    Python numérico
    Python numérico
    NOTICIAS: NumPy 1.11.2 es la última versión
    que se hará en sourceforge. Ruedas
    para Windows, Mac y Linux, así como
    Las distribuciones fuente archivadas pueden ser cuatro...
    Descargar Python numérico
  • Más "

Comandos de Linux

Ad