concurrent.futures
From Dontopedia, the open, paraconsistent wiki. (Last updated 2026-06-11.)
concurrent.futures has 103 facts recorded in Dontopedia across 47 references, with 8 live disagreements.
Mostly:rdf:type(42), provides(12), provides class(4)
Maturity scale
raw canonical shape-checked rule-derived certifiedRdf:typein disputerdf:type
- Python Module[1]all time · 15d7388e 43fd 4058 8b3c 713df105541b
- Python Module[2]all time · 70bbc43a 27da 4ee6 Abde 0b83af52d874
- Python Module[3]all time · 87db15d8 65ae 427c 81af 5cf6c025902f
- Module[4]all time · 89a59862 A7a9 4506 9ac7 298e2f20a995
- Python Module[5]all time · 9e761ac3 99bf 4f15 9b5e Ebbb001e4b84
- Python Module[7]all time · C96d5f6b 8bf8 49d1 9675 Baad52ac5338
- Python Module[8]all time · 9407f487 191d 4d72 Ba87 E10cd3dd5029
- Module[10]all time · D1f64878 74b9 4f54 8f90 8a13f310c004
- Python Module[12]all time · D4883390 4aea 45c2 B956 Bea66d215ca8
- Python Module[13]all time · 29413eb2 4b1e 4c41 9aea 6f5706beda30
Providesin disputeprovides
- threading pool functionality[11]all time · A02712f5 5ded 488f B6f8 2fa43ad0daed
- parallel-execution-capabilities[18]sourceall time · 50849d6a 9541 443b B17f 33a9ea25d12e
- Thread Pool Executor Class[19]sourceall time · Ba217a5b 24c8 4a3e B797 6ab1842e3ed4
- As Completed Function[19]sourceall time · Ba217a5b 24c8 4a3e B797 6ab1842e3ed4
- Thread Pool Executor[23]sourceall time · 15aaf01b 1f4f 4dfa B02a 08638b200f2e
- As Completed[23]sourceall time · 15aaf01b 1f4f 4dfa B02a 08638b200f2e
- Thread Pool Executor[25]all time · 92e4639a F6d5 46ab Bfaa 6b08b794cd10
- As Completed[25]all time · 92e4639a F6d5 46ab Bfaa 6b08b794cd10
- Thread Pool Executor[30]sourceall time · 1fc35694 7ba0 4ca2 B232 927811945bed
- As Completed Function[30]sourceall time · 1fc35694 7ba0 4ca2 B232 927811945bed
Inbound mentions (61)
Other subjects in dontopedia point AT this entity as a value. These are inverse relationships — e.g. "X motherOf this subject" — and answer questions the forward facts can't. Grouped by predicate.
importsImports(10)
- Code Example
ex:code-example - Code Example
ex:code-example - Example Implementation
ex:example-implementation - Example Threading
ex:example-threading - Import Concurrent Futures
ex:import-concurrent-futures - Main Function
ex:main-function - Modular Ingestion System
ex:modular-ingestion-system - Process Queries Method
ex:process-queries-method - Python Code Block
ex:python-code-block - Refactored Code
ex:refactored-code
memberOfMember of(7)
- As Completed
ex:as-completed - As Completed
ex:as-completed - As Completed
ex:as_completed - As Completed Function
ex:as-completed-function - Thread Pool Executor
ex:thread-pool-executor - Thread Pool Executor
ex:thread-pool-executor - Thread Pool Executor
ex:ThreadPoolExecutor
importsModuleImports Module(5)
- Concurrent Futures Import
ex:concurrent-futures-import - Concurrent Futures Import
ex:concurrent-futures-import - Example Concurrency
ex:example-concurrency - Scalability Optimizer Class
ex:scalability-optimizer-class - Weaviate Benchmark Script
ex:weaviate-benchmark-script
hasImportHas Import(4)
- Code Document
code-document - Optimized Code
ex:optimized-code - Python Code
ex:python-code - Python Code Example
ex:python-code-example
importedFromImported From(4)
- As Completed Function
ex:as-completed-function - As Completed Function
ex:as-completed-function - Concurrent Futures
ex:concurrent-futures - Thread Pool Executor
ex:thread-pool-executor
belongsToManyBelongs to Many(3)
- As Completed
ex:as-completed - Executor Submit
ex:executor-submit - Process Pool Executor
ex:ProcessPoolExecutor
usesUses(3)
- Concurrent Document Processing
ex:concurrent-document-processing - Example Code
ex:example-code - Optimized Code Example
ex:optimized-code-example
belongsToListBelongs to List(2)
- As Completed
ex:as-completed - Thread Pool Executor
ex:thread-pool-executor
containsImportContains Import(2)
- Code Example
ex:code-example - Example Implementation
ex:example-implementation
ex:partOfEx:part of(2)
- As Completed Iterator
ex:as-completed-iterator - Thread Pool Executor
ex:thread-pool-executor
impliesImportImplies Import(2)
- Code Snippet
ex:code-snippet - Source Document
ex:source-document
locatedInLocated in(2)
- As Completed
ex:as-completed - Thread Pool Executor
ex:thread-pool-executor
requiresRequires(2)
- As Completed
ex:as_completed - Thread Pool Executor
ex:ThreadPoolExecutor
addressedByAddressed by(1)
- Thread Safety
ex:thread-safety
belongsToBelongs to(1)
- Import Threadpool
ex:import-threadpool
ex:includesEx:includes(1)
- Import Statements
ex:import-statements
functionOfFunction of(1)
- As Completed
ex:as-completed
implementedByImplemented by(1)
- Parallel Processing
ex:parallel-processing
importSourceImport Source(1)
- Thread Pool Executor
ex:ThreadPoolExecutor
isInstanceOfIs Instance of(1)
- Thread Pool Executor
ex:thread-pool-executor
isPythonConcurrentFeatureIs Python Concurrent Feature(1)
- Thread Pool Executor
ex:ThreadPoolExecutor
moduleOfModule of(1)
- Thread Pool Executor
ex:thread-pool-executor
partOfPart of(1)
- Thread Pool Executor
ex:thread-pool-executor
recommendsRecommends(1)
- Section Header
ex:section-header
requiresModuleRequires Module(1)
- Scalability Optimizer Class
ex:scalability-optimizer-class
usesPythonFeatureUses Python Feature(1)
- Optimize Scalability Method
ex:optimize-scalability-method
Other facts (26)
The long tail: predicates that appear too rarely to warrant their own section. Filter or scroll to find a specific one. Each row links to its source.
| Predicate | Value | Ref |
|---|---|---|
| Provides Class | ThreadPoolExecutor | [4] |
| Provides Class | Thread Pool Executor | [7] |
| Provides Class | Thread Pool Executor | [27] |
| Provides Class | ProcessPoolExecutor | [45] |
| Exports | Thread Pool Executor | [36] |
| Exports | Thread Pool Executor | [43] |
| Exports | As Completed | [43] |
| Provides Function | as_completed() | [4] |
| Provides Function | Map Function | [7] |
| Enables | Parallel Processing | [9] |
| Enables | Better Management | [17] |
| Supports | Threading | [10] |
| Supports | Multiprocessing | [10] |
| Standard Library | true | [6] |
| Language | Python | [8] |
| Exported Class | Thread Pool Executor | [9] |
| Exported Function | As Completed | [9] |
| Has Function | Thread Pool Executor | [17] |
| Provides Interface | Higher Level Interface | [17] |
| Manages | Threads and Processes | [17] |
| Facilitates | Task and Result Handling | [17] |
| Provides Solution | Performance Impact | [17] |
| Imported Item | Thread Pool Executor | [32] |
| Imported But Not Used | true | [35] |
| Provides Interface for | Async Execution | [38] |
| Is Imported in | Code Block | [39] |
Timeline
Timeline axis is valid_time — when each source says the fact was true in the world, not when Dontopedia learned about it. Retracted rows are kept for provenance; coloured stripes indicate the context kind.
References (47)
ctx:claims/beam/15d7388e-43fd-4058-8b3c-713df105541bctx:claims/beam/70bbc43a-27da-4ee6-abde-0b83af52d874ctx:claims/beam/87db15d8-65ae-427c-81af-5cf6c025902f- full textbeam-chunktext/plain1 KB
doc:beam/87db15d8-65ae-427c-81af-5cf6c025902fShow excerpt
If you are deploying this in a production environment, consider using a load balancer to distribute the load across multiple instances. ### 4. Measure and Monitor Performance Use performance monitoring tools to measure and optimize the re…
ctx:claims/beam/89a59862-a7a9-4506-9ac7-298e2f20a995ctx:claims/beam/9e761ac3-99bf-4f15-9b5e-ebbb001e4b84- full textbeam-chunktext/plain1 KB
doc:beam/9e761ac3-99bf-4f15-9b5e-ebbb001e4b84Show excerpt
# Simulate some processing time time.sleep(0.1) return f"Hello, user {user_id}!" def main(): num_users = 8000 response_times = [] with concurrent.futures.ThreadPoolExecutor(max_workers=100) as …
ctx:claims/beam/38560778-3ede-4ceb-8e27-66e99a32c394- full textbeam-chunktext/plain1 KB
doc:beam/38560778-3ede-4ceb-8e27-66e99a32c394Show excerpt
for future in concurrent.futures.as_completed(futures): user_id = futures[future] try: response, response_time = future.result() response_times.append(response_t…
ctx:claims/beam/c96d5f6b-8bf8-49d1-9675-baad52ac5338- full textbeam-chunktext/plain1 KB
doc:beam/c96d5f6b-8bf8-49d1-9675-baad52ac5338Show excerpt
- The query is tokenized using the tokenizer. - The model generates the output based on the tokenized input. - The generated output is decoded back to text using the tokenizer. ### Additional Considerations - **Concurrency:** For…
ctx:claims/beam/9407f487-191d-4d72-ba87-e10cd3dd5029- full textbeam-chunktext/plain1 KB
doc:beam/9407f487-191d-4d72-ba87-e10cd3dd5029Show excerpt
[Turn 3291] Assistant: Certainly! To handle 14,000 documents hourly in a modular and efficient manner, you can leverage several techniques such as parallel processing, batch processing, and asynchronous execution. Here's an enhanced version…
ctx:claims/beam/a34a5cb6-8ff1-401f-852b-cb7214367739- full textbeam-chunktext/plain1 KB
doc:beam/a34a5cb6-8ff1-401f-852b-cb7214367739Show excerpt
1. **Parallel Processing:** Use Python's `concurrent.futures` module to process tasks in parallel. 2. **Batch Processing:** Split the documents into batches to manage memory and processing load. 3. **Asynchronous Execution:** Use `asyncio` …
ctx:claims/beam/d1f64878-74b9-4f54-8f90-8a13f310c004- full textbeam-chunktext/plain1 KB
doc:beam/d1f64878-74b9-4f54-8f90-8a13f310c004Show excerpt
- The `ModularDocumentProcessor` class manages a dictionary of processors indexed by file extension. - It registers processors for different file extensions and processes documents based on their extension. - The `process_document`…
ctx:claims/beam/a02712f5-5ded-488f-b6f8-2fa43ad0daedctx:claims/beam/d4883390-4aea-45c2-b956-bea66d215ca8- full textbeam-chunktext/plain1 KB
doc:beam/d4883390-4aea-45c2-b956-bea66d215ca8Show excerpt
latency_reduction = 120 # ms return latency_reduction def optimize_scalability(self): # Initialize optimization metrics total_latency_reduction = 0 total_threads_used = 0 # Use a Thread…
ctx:claims/beam/29413eb2-4b1e-4c41-9aea-6f5706beda30ctx:claims/beam/9100d632-7ce8-4068-9786-99aaa8f64f83- full textbeam-chunktext/plain1 KB
doc:beam/9100d632-7ce8-4068-9786-99aaa8f64f83Show excerpt
[Turn 4231] Assistant: Absolutely, let's add a note about the expected backpressure delays for streaming during peak loads to provide a more complete picture of the trade-offs. We'll include this information in the output to give a clearer …
ctx:claims/beam/31ba6d49-95fa-41e5-83c0-471bcede3436- full textbeam-chunktext/plain1 KB
doc:beam/31ba6d49-95fa-41e5-83c0-471bcede3436Show excerpt
print(f"Processed {file_path} successfully") except Exception as e: print(f"Failed to process {file_path}: {e}") if __name__ == "__main__": main() ``` ### Explanation 1. **Concurrency Manag…
ctx:claims/beam/3be02e38-dcdd-4f13-8fdf-4b68b115e2b9- full textbeam-chunktext/plain1 KB
doc:beam/3be02e38-dcdd-4f13-8fdf-4b68b115e2b9Show excerpt
3. **executor.map**: The `executor.map` function applies the `worker` function to each document in the list concurrently. This is more efficient than manually starting and joining threads. 4. **Latency Calculation**: The code measures the …
ctx:claims/beam/0e5ea224-71bf-43e8-8875-f1edd09a690c- full textbeam-chunktext/plain1 KB
doc:beam/0e5ea224-71bf-43e8-8875-f1edd09a690cShow excerpt
Simulated sleeps (`time.sleep`) can significantly impact performance. Ensure that the actual operations within `extract_metadata` are as efficient as possible. ### 5. **Use `concurrent.futures` for Better Management** The `concurrent.futur…
ctx:claims/beam/50849d6a-9541-443b-b17f-33a9ea25d12e- full textbeam-chunktext/plain1 KB
doc:beam/50849d6a-9541-443b-b17f-33a9ea25d12eShow excerpt
- Test the pipeline to ensure it handles errors and retries correctly. - Verify that the system can handle 3,500 documents per hour with under 200ms processing time. 3. **Monitor Performance**: - Monitor the system to ensure it ac…
ctx:claims/beam/ba217a5b-24c8-4a3e-b797-6ab1842e3ed4- full textbeam-chunktext/plain1 KB
doc:beam/ba217a5b-24c8-4a3e-b797-6ab1842e3ed4Show excerpt
from sentence_transformers import SentenceTransformer from concurrent.futures import ThreadPoolExecutor, as_completed # Load the model once model = SentenceTransformer('paraphrase-MiniLM-L6-v2') def vectorize_document(doc): return mod…
ctx:claims/beam/665bc143-4088-460d-bbfe-cf032b2a23d8- full textbeam-chunktext/plain1 KB
doc:beam/665bc143-4088-460d-bbfe-cf032b2a23d8Show excerpt
- Monitor the system to ensure it achieves the desired performance. - Use monitoring tools to track resource usage and identify any bottlenecks. ### Enhanced Code with Error Handling and Retry Logic Here is the enhanced code again f…
ctx:claims/beam/d484fb83-3798-4b15-8e73-8c01c48cbe47- full textbeam-chunktext/plain1 KB
doc:beam/d484fb83-3798-4b15-8e73-8c01c48cbe47Show excerpt
1. **Profile the Code**: Use profiling tools to identify where the most time is being spent. 2. **Optimize Model Loading**: Load the model once and reuse it across multiple documents. 3. **Parallel Processing**: Use parallel processing to h…
ctx:claims/beam/8cee6c1d-15d9-4754-b271-1da2d8b5ba50- full textbeam-chunktext/plain1 KB
doc:beam/8cee6c1d-15d9-4754-b271-1da2d8b5ba50Show excerpt
- Use `cProfile` to profile the code and identify bottlenecks. ```python import cProfile cProfile.run('vectorize_pipeline(docs)') ``` 2. **Optimize Model Loading**: - Load the model once outside the loop to avoid redundan…
ctx:claims/beam/15aaf01b-1f4f-4dfa-b02a-08638b200f2e- full textbeam-chunktext/plain1 KB
doc:beam/15aaf01b-1f4f-4dfa-b02a-08638b200f2eShow excerpt
- Monitor the system to ensure it achieves the desired performance. - Use monitoring tools to track resource usage and identify any bottlenecks. ### Example Usage Ensure you replace the placeholder documents with your actual data: …
ctx:claims/beam/571a2d0a-68b3-41f5-b75b-6f292d8afe9bctx:claims/beam/92e4639a-f6d5-46ab-bfaa-6b08b794cd10- full textbeam-chunktext/plain1 KB
doc:beam/92e4639a-f6d5-46ab-bfaa-6b08b794cd10Show excerpt
logging.error(f"Failed to vectorize document after {retries} retries: {e}") return None def vectorize_pipeline(docs, max_workers=None): vectors = [] with ThreadPoolExecutor(max_workers=max_workers) a…
ctx:claims/beam/c0f4462c-292f-49f3-8020-53ec1af1b1b7- full textbeam-chunktext/plain1 KB
doc:beam/c0f4462c-292f-49f3-8020-53ec1af1b1b7Show excerpt
time.sleep(0.1) return [1.0, 2.0, 3.0] def process_documents(documents): vectors = [] for document in documents: vector = vectorize_document(document) vectors.append(vector) return vectors # Generate so…
ctx:claims/beam/64f76d1b-8922-40c7-9347-5a50f46b8113- full textbeam-chunktext/plain1 KB
doc:beam/64f76d1b-8922-40c7-9347-5a50f46b8113Show excerpt
return self.cache[key] result = self.index[key] self.cache[key] = result return result def batch_query(self, keys): results = [] with ThreadPoolExecutor(max_workers=10) as executor: …
ctx:claims/beam/255354c6-ef03-47c5-9b8b-c2e236f09372ctx:claims/beam/e2e55186-575e-4ef3-bacb-6568efa026da- full textbeam-chunktext/plain1 KB
doc:beam/e2e55186-575e-4ef3-bacb-6568efa026daShow excerpt
### Additional Considerations - **Caching Strategy**: - Implement a more sophisticated caching strategy, such as LRU (Least Recently Used) cache, to manage memory usage effectively. - **Load Balancing**: - Ensure that your system can …
ctx:claims/beam/1fc35694-7ba0-4ca2-b232-927811945bed- full textbeam-chunktext/plain1 KB
doc:beam/1fc35694-7ba0-4ca2-b232-927811945bedShow excerpt
Ensure that frequently accessed data is cached and accessed quickly. ### 6. Use Efficient Parallel Processing Optimize the number of threads and ensure that tasks are evenly distributed. ### 7. Use Asynchronous Programming Consider using …
ctx:claims/beam/03ec600a-b724-4073-95c2-a30011ec64c9ctx:claims/beam/4856bdab-4a7e-4c2b-b720-7f145679293b- full textbeam-chunktext/plain1 KB
doc:beam/4856bdab-4a7e-4c2b-b720-7f145679293bShow excerpt
- **Batch Queries:** Group similar queries together and process them in batches to reduce overhead. - **Asynchronous Processing:** Use asynchronous processing to handle multiple queries concurrently. ### 5. Monitoring and Feedback #### Re…
ctx:claims/beam/a9675ea7-6b79-409d-b197-5890051a64b0ctx:claims/beam/11bf0515-53f9-441c-b566-2d9b5e067453- full textbeam-chunktext/plain1 KB
doc:beam/11bf0515-53f9-441c-b566-2d9b5e067453Show excerpt
documents = ["This is a test document."] * 1000 # Example documents index_documents(documents) ``` ### Explanation 1. **Batch Processing**: - Documents are processed in batches of `batch_size` to reduce overhead. 2. **Parallel Proces…
ctx:claims/beam/f537c0ec-0996-4601-868a-9cb050537ebdctx:claims/beam/ec3d40ab-3a8c-4f39-9306-1d9eb12fad77- full textbeam-chunktext/plain1 KB
doc:beam/ec3d40ab-3a8c-4f39-9306-1d9eb12fad77Show excerpt
### Example Implementation Here's an example implementation that demonstrates how to structure your feedback collection logic using modular design patterns: ```python import logging from concurrent.futures import ThreadPoolExecutor from k…
ctx:claims/beam/a0f28c5e-27ec-413d-b165-3e10b4bb7907- full textbeam-chunktext/plain1 KB
doc:beam/a0f28c5e-27ec-413d-b165-3e10b4bb7907Show excerpt
2. **Efficient Data Handling**: Ensure that data handling is efficient and does not become a bottleneck. 3. **Monitoring and Logging**: Implement monitoring and logging to detect and mitigate issues quickly. 4. **Resource Management**: Ensu…
ctx:claims/beam/91da36df-8e17-4f78-9f1c-1d3dd5d66465- full textbeam-chunktext/plain1 KB
doc:beam/91da36df-8e17-4f78-9f1c-1d3dd5d66465Show excerpt
Here's how you can implement parallel processing using Python's `concurrent.futures` module, which provides a high-level interface for asynchronously executing callables: ### Example Implementation ```python import time from concurrent.fu…
ctx:claims/beam/32729e2b-7695-4112-a3ba-684cccde5d41- full textbeam-chunktext/plain1 KB
doc:beam/32729e2b-7695-4112-a3ba-684cccde5d41Show excerpt
6. **RuntimeError**: Raised when an error is detected that doesn't fall in any of the other categories. - **Example**: An unexpected condition that disrupts the normal flow of the program. - **Handling**: Use general exception handlin…
ctx:claims/beam/02a78e85-75b8-44ad-845e-833d1a39bae2- full textbeam-chunktext/plain1 KB
doc:beam/02a78e85-75b8-44ad-845e-833d1a39bae2Show excerpt
outputs = self.model.generate(**inputs) reformulated_query = self.tokenizer.decode(outputs[0], skip_special_tokens=True) self.redis_client.set(query, reformulated_query, ex=3600) # Cache for 1 hour return re…
ctx:claims/beam/2cbdcf90-9d21-4bed-aea6-acf4a8366428- full textbeam-chunktext/plain1 KB
doc:beam/2cbdcf90-9d21-4bed-aea6-acf4a8366428Show excerpt
futures = [executor.submit(self.model.batch_reformulate, queries[i:i+batch_size]) for i in range(0, len(queries), batch_size)] results = [] for future in as_completed(futures): results.ext…
ctx:claims/beam/3b67b6e4-dcd4-4ef5-84ce-e1afeda55afd- full textbeam-chunktext/plain1 KB
doc:beam/3b67b6e4-dcd4-4ef5-84ce-e1afeda55afdShow excerpt
results = [] for future in as_completed(futures): results.extend(future.result()) return results class ReformulationService: def __init__(self): self.pipeline = ReformulationP…
ctx:claims/beam/746bb077-b0ad-4232-9087-b3f9c030944f- full textbeam-chunktext/plain1 KB
doc:beam/746bb077-b0ad-4232-9087-b3f9c030944fShow excerpt
[Turn 10445] Assistant: Great! Let's summarize the steps you'll take to implement batch processing, concurrency, and profiling. We'll also discuss how to handle caching for frequent queries. ### Step 1: Implement Batch Processing and Concu…
ctx:claims/beam/b3e8d51d-b4fb-4888-a98d-76e8850916b5- full textbeam-chunktext/plain1 KB
doc:beam/b3e8d51d-b4fb-4888-a98d-76e8850916b5Show excerpt
# Initialize Redis client redis_client = redis.Redis(host='localhost', port=_) # Define a function to correct a query def reformulate_query(query): start_time = time.time() if not hspell.spell(query): suggestions = hspell.s…
ctx:claims/beam/1397d9a3-c256-4337-bd5c-29c721be026d- full textbeam-chunktext/plain1 KB
doc:beam/1397d9a3-c256-4337-bd5c-29c721be026dShow excerpt
### 5. Monitoring and Logging Set up monitoring and logging to track performance and identify bottlenecks. ### Example Implementation Here's an example implementation that incorporates these principles: ```python import logging import sp…
ctx:claims/beam/35510816-951b-4dca-95c0-f26feaa4b6a6- full textbeam-chunktext/plain1 KB
doc:beam/35510816-951b-4dca-95c0-f26feaa4b6a6Show excerpt
[Turn 10779] Assistant: Certainly! Let's review your code for integrating Polyglot's language detection and suggest improvements to reduce the 200ms response time for processing 900 text chunks. ### Review and Improvements 1. **Initializa…
ctx:claims/beam/5a656395-eca3-4495-bbd0-31046aeca5e6- full textbeam-chunktext/plain1 KB
doc:beam/5a656395-eca3-4495-bbd0-31046aeca5e6Show excerpt
with ProcessPoolExecutor(max_workers=max_workers) as executor: for token_freq in executor.map(tokenize_text, text_chunks): results.append(token_freq) return results # Example usage text_chunks = ["This is an exa…
See also
- Python Module
- Module
- Thread Pool Executor
- Map Function
- Python Module
- Python
- As Completed
- Parallel Processing
- Threading
- Multiprocessing
- Higher Level Interface
- Threads and Processes
- Task and Result Handling
- Performance Impact
- Better Management
- Python Standard Library
- Thread Pool Executor Class
- As Completed Function
- Python Standard Library Module
- Thread Pool Executor
- As Completed
- As Completed Function
- Python Standard Library Module
- Concurrent Execution
- Async Execution
- Code Block
- As Completed
- Process Pool Executor
Keep researching
Missing something or suspicious of what's here? Kick off a research session — a Claude agent will investigate, cite its sources, and file new facts into a dedicated context you can review before accepting into the shared view.