Chris Dickens 4be320236e Windows: Improve locking in threading abstraction
Convert the usbi_mutex_t type to a CRITICAL_SECTION object. There
are numerous advantages including lower resource usage and a better
fast-path (doesn't require entering kernel space).

Simplify the condition variable implementation by not associating a
wait structure with a particular thread ID. This is not needed and
causes an unnecessary search through the linked list of any available
wait structures when the real optimization is just reusing an already
created event object.

Also, while here remove all the checks for NULL pointers because we
don't do such a silly thing inside the library.

Signed-off-by: Chris Dickens <christopher.a.dickens@gmail.com>
2018-01-03 23:24:27 -08:00
2014-12-16 21:57:42 +01:00
2017-01-12 15:03:16 -08:00
2017-03-31 08:54:21 +02:00
2016-03-20 09:48:06 -06:00
2016-02-26 21:30:00 -07:00
2016-10-01 06:49:09 -06:00
2007-12-02 22:54:59 +00:00
2016-07-24 20:00:00 -06:00
2017-01-18 14:17:38 +00:00
2016-07-24 20:02:31 -06:00

libusb

Build Status Build status Coverity Scan Build Status

libusb is a library for USB device access from Linux, Mac OS X, Windows, OpenBSD/NetBSD and Haiku userspace. It is written in C (Haiku backend in C++) and licensed under the GNU Lesser General Public License version 2.1 or, at your option, any later version (see COPYING).

libusb is abstracted internally in such a way that it can hopefully be ported to other operating systems. Please see the PORTING file for more information.

libusb homepage: http://libusb.info/

Developers will wish to consult the API documentation: http://api.libusb.info

Use the mailing list for questions, comments, etc: http://mailing-list.libusb.info

(Please use the mailing list rather than mailing developers directly)

S
Description
A cross-platform library to access USB devices
Readme 4 MiB
Languages
C 91.7%
C++ 3.1%
CMake 1.6%
Batchfile 1.1%
Makefile 1%
Other 1.5%