{"id":13998162,"url":"https://github.com/smol-rs/concurrent-queue","last_synced_at":"2025-05-14T10:10:12.945Z","repository":{"id":45103402,"uuid":"267408769","full_name":"smol-rs/concurrent-queue","owner":"smol-rs","description":"Concurrent multi-producer multi-consumer queue","archived":false,"fork":false,"pushed_at":"2025-01-19T16:42:04.000Z","size":83,"stargazers_count":281,"open_issues_count":6,"forks_count":23,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-08T00:08:53.169Z","etag":null,"topics":["rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smol-rs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-27T19:30:46.000Z","updated_at":"2025-05-01T00:33:55.000Z","dependencies_parsed_at":"2023-02-09T22:25:12.703Z","dependency_job_id":"2cc874b3-1396-4979-a786-de45d4cb2e94","html_url":"https://github.com/smol-rs/concurrent-queue","commit_stats":{"total_commits":85,"total_committers":11,"mean_commits":"7.7272727272727275","dds":0.5529411764705883,"last_synced_commit":"4ecde29f41f3cc9bad3b9c6da36b472cd6639cda"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smol-rs%2Fconcurrent-queue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smol-rs%2Fconcurrent-queue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smol-rs%2Fconcurrent-queue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smol-rs%2Fconcurrent-queue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smol-rs","download_url":"https://codeload.github.com/smol-rs/concurrent-queue/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076862,"owners_count":22010613,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rust"],"created_at":"2024-08-09T19:01:26.286Z","updated_at":"2025-05-14T10:10:12.883Z","avatar_url":"https://github.com/smol-rs.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# concurrent-queue\n\n[![Build](https://github.com/smol-rs/concurrent-queue/workflows/Build%20and%20test/badge.svg)](\nhttps://github.com/smol-rs/concurrent-queue/actions)\n[![License](https://img.shields.io/badge/license-Apache--2.0_OR_MIT-blue.svg)](\nhttps://github.com/smol-rs/concurrent-queue)\n[![Cargo](https://img.shields.io/crates/v/concurrent-queue.svg)](\nhttps://crates.io/crates/concurrent-queue)\n[![Documentation](https://docs.rs/concurrent-queue/badge.svg)](\nhttps://docs.rs/concurrent-queue)\n\nA concurrent multi-producer multi-consumer queue.\n\nThere are two kinds of queues:\n\n1. Bounded queue with limited capacity.\n2. Unbounded queue with unlimited capacity.\n\nQueues also have the capability to get closed at any point. When closed, no more items can be\npushed into the queue, although the remaining items can still be popped.\n\nThese features make it easy to build channels similar to `std::sync::mpsc` on top of this\ncrate.\n\n## Examples\n\n```rust\nuse concurrent_queue::ConcurrentQueue;\n\nlet q = ConcurrentQueue::unbounded();\nq.push(1).unwrap();\nq.push(2).unwrap();\n\nassert_eq!(q.pop(), Ok(1));\nassert_eq!(q.pop(), Ok(2));\n```\n\n## License\n\nLicensed under either of\n\n * Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n#### Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\ndual licensed as above, without any additional terms or conditions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmol-rs%2Fconcurrent-queue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmol-rs%2Fconcurrent-queue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmol-rs%2Fconcurrent-queue/lists"}