Skip to main content
Sliding Window
==============

Sliding Window is an implementation of a process worker pool that constantly keeps a given number of running processes.
The implementation is based on python's multiprocessing module.


Install
=======

Using Pip
^^^^^^^^^

Run the command:

.. code-block:: bash

pip install mp_sliding_window


Instaling from the source
^^^^^^^^^^^^^^^^^^^^^^^^^

You can clone the repository and install:

.. code-block:: bash

git clone https://github.com/jalpedrinha/slidingwindow.git
cd slidingwindow && python setup.py install



Compatibility
=============

Tested for python2.7+

Supports postgresql and sqlite3.


Getting Started
===============

We start by providing the tasks we'll be running using any iterable.
In this case we'll use a generator pattern because it makes sense in the context of a sliding window.

.. code-block:: python

def generator():
x = 0
while x < 10:
x += 1
yield x

Next we provide the function we want to run in each process

.. code-block:: python

def square(x):
print x*x


The last step is to create a sliding window with a given size, target and tasks.
After invoking start the sliding window will run until there are no more tasks.

.. code-block:: python

sl = SlidingWindow(size = 5, target=square, tasks=generator())
sl.start()


Documentation
=============

Soon..


License
=======

The BSD 3-Clause License
^^^^^^^^^^^^^^^^^^^^^^^^

Copyright (c) 2015, Jorge Alpedrinha Ramos
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of the organization nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Metadata

Release files for MP_Sliding_Window 0.0.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for MP_Sliding_Window 0.0.26
File Size Uploaded
MP_Sliding_Window-0.0.26.tar.gz 3.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for MP_Sliding_Window 0.0.26
File Interpreter ABI Platform
MP_Sliding_Window-0.0.26-py2-none-any.whl Python 2 none any Details

Total release size: 9.7 kB

Release files / MP_Sliding_Window-0.0.26.tar.gz

Download URL MP_Sliding_Window-0.0.26.tar.gz
Size 3.9 kB
Tags Source
SHA-256 checksum
How to use checksums
adfa3eba48f11adcc5284a82ebe3a8863dfbf43a511786d499d03fc334021d0b
BLAKE2b-256 checksum
How to use checksums
64c48647a07671b39716c384f67b029de595db623f33a6d1dd5fc70f9e5b4861
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / MP_Sliding_Window-0.0.26-py2-none-any.whl

Download URL MP_Sliding_Window-0.0.26-py2-none-any.whl
Size 5.9 kB
Tags Python 2
SHA-256 checksum
How to use checksums
b215f5736a52ecbdd6ca3ddf9d6ae7dc2877ad14ddf703ea7dbeef1871654023
BLAKE2b-256 checksum
How to use checksums
e901f517c1131997808a28aa376187cea3c71929c31997e475e5fffeedc9cc94
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.26 This release

2 release files

0.0.24

1 release file

0.0.21

2 release files

0.0.11

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page