Skip to main content

Python implementation of Haskell's Control.Concurrent.MVar

Project description

# pyhton-mvar

[![PyPI version](https://badge.fury.io/py/mvar.svg)](https://badge.fury.io/py/mvar) [![Build Status](https://travis-ci.com/gabrik/mvar-python.svg?branch=master)](https://travis-ci.com/gabrik/mvar-python) [![codecov](https://codecov.io/gh/gabrik/mvar-python/branch/master/graph/badge.svg)](https://codecov.io/gh/gabrik/mvar-python)

A Pyhton port of Haskell’s [Control.Concurrent.MVar](https://hackage.haskell.org/package/base/docs/Control-Concurrent-MVar.html).

This implementation blocks on get if the MVar is empty, and on put if the MVar is not empty.

A MVar is a mutable location which can either be empty, or contain a value. The location can be written to and read from safely from multiple concurrent python threads.

### Installation

pip3 install mvar

### Example

A brief example with 3 threads and one MVar is available in [example](example/example.py)

Copyright 2018 Gabriele Baldoni

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mvar-1.0.0.tar.gz (3.5 kB view hashes)

Uploaded source

Built Distribution

mvar-1.0.0-py3-none-any.whl (8.0 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page