dogpile.core

Un bloqueo 'DogPile', generalmente utilizado como un componente de una solución de almacenamiento en caché más grande
Descargar ahora

dogpile.core Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • BSD License
  • Precio:
  • FREE
  • Nombre del editor:
  • Mike Bayer
  • Sitio web del editor:
  • http://www.makotemplates.org/

dogpile.core Etiquetas


dogpile.core Descripción

DogPile.core es un bloqueo de "dogpile", uno que permite un solo hilo para generar un recurso costoso, mientras que otros hilos usan el valor "antiguo", hasta que el valor "nuevo" esté listo. DoGPile es básicamente el código de bloqueo extraído del vaso de precipitados. Paquete, para uso simple y genérico. Ejemplo simple de MUSAGEA: desde dogpile.core importar dogpile # almacena una referencia a un "recurso", algunos # objeto que es costoso de crear.the_resource = definit_creation_function (): # Crea el Recurso aquí the_resource = create_some_resource () DEF use_the_resource (): # alguna función que usa # el recurso. No llegará a # aquí hasta que alguna_creation_function () # se haya completado al menos una vez. the_resource .do_something () # crea dogpile con 3600 segundos # caducar timedogpile = dogpile (3600) con dogpile.acquire (some_creation_function): use_the_resource () arriba, se llama a dogpile.acquire () primero . El resto del bloque con bloquea entonces procede. Los hilos concurrentes que llaman dogpile.acquire () durante este período inicial se bloquearán hasta que se complete la función de creación (). La función de creación se haya completado con éxito la primera vez, las nuevas llamadas a dogpile.acquire () llamará a alguna_creation_function () cada vez que " Se ha alcanzado la expirotime ", permitiendo solo un solo hilo para llamar a la función. Los hilos concurrentes que llaman dogpile.acquire () durante este período caerán, y no se bloquearán. Se espera que la versión "ranciar" del recurso permanezca disponible en este momento, mientras se genera uno nuevo.DogPile.core está en el núcleo del paquete DOGPILE.CACHE que proporciona una API de caché básica y los billetes de muestra basados ​​en el Concepto de dogPile.Desarrollo de estatus de desarrollo Note DogPile.core es nuevo y solo ha tenido un uso mínimo de producción! Los comentarios y mejoras son bienvenidos. Dado que este es un código orientado a la concurrencia, revise la fuente y avíseme sobre posibles problemas. ¡Como siempre, use a su propio riesgo! Página de inicio del producto


dogpile.core Software relacionado