{"id":23092285,"url":"https://github.com/sourcefrog/readahead-iterator","last_synced_at":"2025-08-16T10:30:45.496Z","repository":{"id":56281689,"uuid":"313347777","full_name":"sourcefrog/readahead-iterator","owner":"sourcefrog","description":"Readahead from an iterator on a separate thread, returning items in order and synchronously","archived":false,"fork":false,"pushed_at":"2022-01-01T20:12:47.000Z","size":18,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-14T15:48:38.570Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sourcefrog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-11-16T15:36:26.000Z","updated_at":"2022-01-01T20:12:49.000Z","dependencies_parsed_at":"2022-08-15T16:00:27.878Z","dependency_job_id":null,"html_url":"https://github.com/sourcefrog/readahead-iterator","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Freadahead-iterator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Freadahead-iterator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Freadahead-iterator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Freadahead-iterator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sourcefrog","download_url":"https://codeload.github.com/sourcefrog/readahead-iterator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229749274,"owners_count":18118321,"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":[],"created_at":"2024-12-16T21:32:01.901Z","updated_at":"2024-12-16T21:32:02.579Z","avatar_url":"https://github.com/sourcefrog.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Readahead adaptor for iterators\n\nAPI Docs: https://docs.rs/readahead-iterator/\n\nExamples: https://github.com/sourcefrog/readahead-iterator/tree/main/examples\n\nItems are generated from the iterator in a separate thread, and returned to the\ncaller as a regular iterator, in the same order.\n\nThis is useful when the wrapped iterator does significant work that can be\nparallelized with other work on the calling thread. For example, if both the\niterator and its client are CPU-intensive, they utilize separate cores. Or if\nthe iterator does blocking IO on multiple files, opening of later files can be\noverlapped with processing of earlier files.\n\n[Rayon][rayon] offers _much_ more powerful ways to parallelize iterators. This\nadaptor is useful for some simpler and complementary cases:\n\n- Both the producer and consumer are serial.\n\n- Items should be produced and consumed one at a time and in order, but\n  production and consumption can be overlapped.\n\n- The work is potentially IO-bound, so a separate thread can be dedicated to\n  this iterator, rather than using an `NCPUS` thread pool.\n\n[rayon]: https://docs.rs/rayon/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsourcefrog%2Freadahead-iterator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsourcefrog%2Freadahead-iterator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsourcefrog%2Freadahead-iterator/lists"}