ipckit 0.1.5

A cross-platform IPC (Inter-Process Communication) library for Rust and Python
Documentation

ipckit

A cross-platform IPC (Inter-Process Communication) library for Rust and Python.

Features

  • Pipes: Anonymous and named pipes for parent-child process communication
  • Shared Memory: Fast data sharing between processes using memory-mapped regions
  • Unix Domain Sockets / Named Pipes: Bidirectional communication channels
  • Message Channels: High-level message passing with serialization support
  • File Channel: Simple file-based IPC for frontend-backend communication
  • Thread Channel: High-performance intra-process thread communication
  • Event Stream: Real-time publish-subscribe event system
  • Task Manager: Task lifecycle management with progress tracking
  • Socket Server: Multi-client socket server (like Docker's socket)
  • API Server: HTTP-over-Socket RESTful API service
  • Metrics: Performance monitoring and metrics collection
  • Waker: Event loop integration for GUI/async frameworks

Example

use ipckit::{NamedPipe, IpcError};

fn main() -> Result<(), IpcError> {
    // Create a named pipe server
    let server = NamedPipe::create("my_pipe")?;

    // In another process, connect as client
    // let client = NamedPipe::connect("my_pipe")?;

    Ok(())
}