Metadata-Version: 2.4
Name: tigerzylinder-custom
Version: 0.1.0
Summary: Eine Privates Biblithek.
Author: tigerzylinder
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: tendo>=0.1.8

# Mein Privates Python-Modul 🛠️

Dies ist eine private Python-Bibliothek, die als zentrale Sammlung für verschiedene nützliche Skripte, Automatisierungen und Hilfsfunktionen dient. Sie wurde entwickelt, um wiederkehrende Aufgaben in unterschiedlichen Projekten schnell und sauber wiederzuverwenden.

---

## 📋 Übersicht aller Funktionen

Klicke auf eine Funktion, um direkt zur jeweiligen Dokumentation und zum Code-Beispiel zu springen:

*   [**`wait_turn(seconds=5)`**](#wait_turnseconds5) – Warteschleife für exklusive Skript-Ausführung (plattformunabhängig).

---

## 📦 Installation

Da es sich um eine private Bibliothek handelt, kann sie lokal im Entwicklungsmodus installiert werden. Navigiere dazu in den Projektordner (wo die `pyproject.toml` liegt) und führe aus:

```bash
pip install -e .
```

---

## 📖 Funktions-Dokumentation

### `wait_turn(seconds=5)`

Verhindert, dass ein Skript mehrfach gleichzeitig ausgeführt wird. Falls bereits eine Instanz aktiv ist, stellt sich das neue Skript hinten an, prüft in regelmäßigen Abständen den Status und startet vollautomatisch, sobald die vorherige Instanz beendet wurde.

#### Parameter
*   **`seconds`** *(int, optional)*: Das Zeitintervall in Sekunden, in dem geprüft wird, ob das blockierende Skript fertig ist. **Standardwert: `5`**.

#### Funktionsweise & Sicherheit
Im Hintergrund wird über die Bibliothek `tendo` eine sichere Dateisperre verwendet. Das sorgt dafür, dass die Funktion komplett plattformunabhängig auf **Linux, macOS und Windows** läuft. 

> ⚠️ **Sicherheitshinweis:** Sollte eine laufende Instanz abstürzen oder manuell abgebrochen werden, gibt das Betriebssystem die Sperre **sofort automatisch frei**. Es kann also niemals passieren, dass nachfolgende Skripte in der Warteschleife dauerhaft blockiert bleiben.

#### Code-Beispiel

Füge die Funktion einfach an den Anfang deines Skripts ein:

```python
import time
import tigerzylinder-custom as custom

# Wartet, bis der Weg frei ist (prüft alle 5 Sekunden)
custom.wait_turn()

# Alternativ mit individuellem Intervall (z. B. alle 2 Sekunden prüfen):
# custom.wait_turn(2)

print("\n[Erfolg] Dieses Skript läuft jetzt exklusiv!")

# Dein eigentlicher Code
for i in range(1, 6):
    print(f"Arbeite... Schritt {i}/5")
    time.sleep(2)

print("[Info] Skript erfolgreich beendet.")
```

---
