capture-thread - Framework for loggers, tracers, and mockers in multithreaded C++ programs.

  •        10

Framework for loggers, tracers, and mockers in multithreaded C++ programs.When developing C++ projects, instrumentation is frequently used to collect information from the system, inject information into the system, or both. The role of this information within the system rarely lines up with the actual structure of the project.



Related Projects

SQL Server Admin Scripts Pack

Collection of T-SQL (mostly) scripts with centralized logging and emailing allowing quick configuration of backup, free space control, operations with files, custom log shipping, audit, lock tracing. Plus other useful utilities and libraries found around in the web.

ADBI - Android Dynamic Binary Instrumentation tool for tracing Android native layer

Android Dynamic Binary Instrumentation tool for tracing Android native layer


Free and completely open source keystroke logging (keylogger) application, allows you to capture and record all keyboard input to a log file. Program is extremely small and lightweight, can run in a hidden mode, or upload log file to specified web server.

zipkin-go-opentracing - OpenTracing Tracer implementation for Zipkin in Go

OpenTracing Tracer implementation for Zipkin in Go.This package is a low level tracing "driver" to allow OpenTracing API consumers to use Zipkin as their tracing backend. For details on how to work with spans and traces we suggest looking at the documentation and README from the OpenTracing API.

Essential Diagnostics

Using and extending System.Diagnostics trace logging. This project uses the inbuilt features of the System.Diagnostics namespace, and shows how logging and tracing can be integrated into a client application whilst taking advantage of the services exposed by System.Diagnostics.

brave - Java distributed tracing implementation compatible with Zipkin backend services.

Java implementation of Dapper ( compatible with Zipkin (

MSDK - Multithreading SDK

Multithreading SDK: cross-platform synchronization primitives, thread support, and multithreading applications. All delivered as C++ classes. Supports Win32 (natively and MSVCRT) and Linux (Pthread).

screenshot-tests-for-android - screenshot-test-for-android is a library that can generate fast deterministic screenshots while running instrumentation tests in android

screenshot-tests-for-android is a library that can generate fast deterministic screenshots while running instrumentation tests in android.We mimic Android's measure(), layout() and draw() to generate screenshots on the test thread. By not having to do the rendering on a separate thread we have control over animations and handler callbacks which makes the screenshots extremely deterministic and reliable for catching regressions in continuous integration.

node-continuation-local-storage - implementation of

Continuation-local storage works like thread-local storage in threaded programming, but is based on chains of Node-style callbacks instead of threads. The standard Node convention of functions calling functions is very similar to something called "continuation-passing style" in functional programming, and the name comes from the way this module allows you to set and get values that are scoped to the lifetime of these chains of function calls. When you set values in continuation-local storage, those values are accessible until all functions called from the original function – synchronously or asynchronously – have finished executing. This includes callbacks passed to process.nextTick and the timer functions (setImmediate, setTimeout, and setInterval), as well as callbacks passed to asynchronous functions that call native functions (such as those exported from the fs, dns, zlib and crypto modules).

Agrona - Library to build high-performance applications in Java and C++

Agrona provides a library of data structures and utility methods that are a common need when building high-performance applications in Java and C++. It supports Buffers, Map, Sets, Cache, Queues and lot more.

JCTools - Java Concurrency Tools for the JVM

Java Concurrency Tools for the JVM. This project aims to offer some concurrent data structures currently missing from the JDK.

Do Work in Background Thread to Keep GUI Responsive

Demonstrate simple example of using BackgroundWorker class to do work on a background thread and then update the GUI in a thread-safe manner.

puma - A Ruby/Rack web server built for concurrency

Puma is a simple, fast, threaded, and highly concurrent HTTP 1.1 server for Ruby/Rack applications in development and production. Under the hood, Puma processes requests using a C-optimized Ragel extension (inherited from Mongrel) that provides fast, accurate HTTP 1.1 protocol parsing in a portable way. Puma then serves the request in a thread from an internal thread pool. Since each request is served in a separate thread, truly concurrent Ruby implementations (JRuby, Rubinius) will use all available CPU cores.

screen-capture-recorder-to-video-windows-free - a free open source windows "screen capture" device and recorder (also allows VLC/ffmpeg and others to capture/stream desktop/audio)

It includes some helper "record your screen capture/stream it" and setup utilities. It also includes a helper (virtual-audio-capturer) to record "what you hear/see on your desktop" for vista+ system. It also includes a free, general purpose, open source directshow desktop/screen source capture filter.

TraceMyNet: a network tracing tool

TraceMyNet is a network tracing tool. It acts as a TCP socket proxy and allows you visualize network traffic, including local traffic that tools like netmon can't capture. It has support for SLL encrypted connections as well.

nedmalloc - An EXTREMELY FAST portable thread caching malloc implementation written in C for multiple threads without lock contention based on dlmalloc

An EXTREMELY FAST portable thread caching malloc implementation written in C for multiple threads without lock contention based on dlmalloc. Optimised for x86 and x64. Compatible with C++. Can patch itself into existing binaries on Windows.


GNU Prolog API for distributed multithreading programming built on top of the PM2 environment. The thread management is made with a user-level multithreading library and communication is made on top of Madeleine, the communication subsystem of PM2.

Sawbuck - Log viewer and controller for Windows Chrome logging

Sawbuck is a log viewer and controller for Windows Chrome logging, and for other applications or plugins that use the logging facility in Chrome base. Logging in Chrome is integrated with Event Tracing for Windows (ETW), which allows ETW controllers like Sawbuck to control log verbosity at runtime. The Chrome logging integration also captures the call stack at the logging site, which can then be resolved and displayed by log viewers such as Sawbuck.

awk4j (AWK for Java Platform)

AWK~plus is the next generation script practice environment. The AWK Language specifications and a main extension of GNU GAWK. Combination of Dynamic and Static typing. Parallel computing that a lock is free, and is thread safe at a language level.

zsocket - Zero-copy sockets for Linux in Golang

ZSocket is a library that wraps the linux zero-copy socket syscall to create a ring buffer in a memory mapped file. It also contains some utility functions and types to help with a handful of layer 2, 3, and 4 types. It is a lot like libcap, except it has easy to understand facilities for writing (injecting packets) to an interface. ZSocket doesn't contain or wrap any C/C++, and it is lock free and thread safe.