concurrency 相关问题

在计算机科学中,并发性是系统的属性,其中可以在重叠的时间段中执行多个计算。计算可以在同一芯片中的多个核上执行,在同一处理器上抢占时间共享线程,或者在物理上分离的处理器上执行。

雪花更新语句锁定整个表并将其他更新语句排队

我们有一个用例,我们需要在雪花中的同一个表上执行多个更新语句(每个更新不同的行集),而不会因更新 q 的排队时间而导致任何延迟...

回答 2 投票 0

使用 asyncio.create_subprocess_exec 设置最大并发数

我需要使用不同的输入运行一个程序大约 500 次。 我想使用 asyncio.create_subprocess_exec 并希望限制同时运行的进程数量,以免堵塞...

回答 2 投票 0

将 opentelemetry-instrumentation-psycopg2 与 psycopg2 一起使用时的递归跟踪问题

问题描述 当我将 opentelemetry-instrumentation-psycopg2 库与 psycopg2 的 ThreadedConnectionPool 一起使用时,我遇到了递归问题。这个问题似乎发生在一些

回答 1 投票 0

Swift 中的互斥替代品

我在多个线程之间有一个共享内存。我想阻止这些线程同时访问这块内存。 (如生产者-消费者问题) 问题: 线程向 q 添加元素...

回答 5 投票 0

如何创建一个 Python 并发 Future,在 Future 列表完成时发出信号?

我有一个函数,可以向 ThreadPoolExecutor 提交多个任务,并返回每次提交创建的 Future 列表: def Submit_tasks() -> [未来]: 期货=[] 对于我在范围内...

回答 2 投票 0

如何确保通道读取不会超过选择中的任何其他情况

我有这两个功能: pointQueue = make(chan *mongo.UpdateOneModel, 1000) func UpdatePoints(用户名字符串,大小 int64) { 点差 := -1 * 大小 更新 := bson.D{{"$inc&q...

回答 1 投票 0

AWS Lambda 增加至 15 个并发执行,然后停止在 lambda_handler 内执行代码,然后降至 1 个并发执行

我有一个超时为 900 秒(15 分钟)的 AWS Lambda 函数。它被设置为使用 EventBridge 计划每 20 分钟运行一次。另外,在代码中,有逻辑,因此一旦到达......

回答 1 投票 0

AWS Lambda 增加到 15 个并发执行(限制为 200),然后停止执行函数代码

我有一个超时为 900 秒(15 分钟)的 AWS Lambda 函数。它被设置为使用 EventBridge 计划每 20 分钟运行一次。另外,在代码中,有逻辑,因此一旦到达......

回答 1 投票 0

GoLang,确保通道读取不会超过选择中的任何其他情况

我目前有这两个功能 pointQueue = make(chan *mongo.UpdateOneModel, 1000) func UpdatePoints(用户名字符串,大小 int64) { 点差 := -1 * 大小 更新 := bson.D{{&...

回答 1 投票 0

DispatchGroup().leave()如何在不同线程中正确运行?

我正在阅读有关跨不同线程释放锁的警告: NSLock 类使用 POSIX 线程来实现其锁定行为。当向 NSLock 对象发送解锁消息时...

回答 1 投票 0

如何让main等待线程执行,但这些线程必须同时启动

我有一个程序,其中创建一个数组,将其克隆到所需数量的相同数组中,然后以不同的方式排序。 https://github.com/zotov88/algorithms 公共类 SortingRunner { ...

回答 1 投票 0

Swift async 让任务在未等待时抛出取消异常

我是 Swift Concurrency 的新手,并试图理解 Task -> ChildTask 关系。 我在这里创建了两个任务 家长任务: (1)从MainThread调用Actor中的test()方法。 (3.2)演员

回答 1 投票 0

在Azure存储中(在C#中使用TableClient),更新实体时如何获取(更新的)ETag?

我正在运行一个多阶段流程,需要多次更新给定的实体(在流程开始之前已经存在)。后续更新之间有一段时间,在此期间其他

回答 2 投票 0

一个线程通知另一个线程需要多长时间?

我想测量一个条件变量通知另一个等待线程需要多长时间。我写这个例子是为了尝试捕获时间差: 布尔准备好{假}; 互斥量 m; 条件变量...

回答 1 投票 0

运行多进程时无法获取属性函数

我想比较使用多重处理和普通线性函数时的速度。 我的代码看起来像这样 来自多处理导入池、管理器 导入时间 从 faker 导入 Faker 行数...

回答 1 投票 0

API 调用是否有速率限制的并发?

我正在尝试对 telnyx(消息服务)API 进行并发 HTTP post 调用,然后使用响应更新数据库。 API 对我们的最大调用次数有 200/s 的限制。下面是我想出的代码...

回答 1 投票 0

使用通道将数据从一个 Goroutine 传递到另一个 Goroutine 的问题

我开发了以下内容: 包主 导入“fmt” 导入“时间” 函数添加(n int){ ch :=make(chan int) 总和:=0 对于我:= 0;i 我开发了以下内容: package main import "fmt" import "time" func add ( n int){ ch :=make(chan int) sum :=0 for i:= 0;i<n;i++{ sum = sum+i } ch <- sum fmt.Println("Sum is",sum) } func display(ch1 chan int){ fmt.Println("Sum is now",ch1) } func main() { ch2 :=make(chan int) go add(10) go display(ch2) fmt.Println("Hello World!") time.Sleep(time.Second) } 我想将当前总和传递到函数显示。 但是,当我打印总和时,我在控制台中收到以下消息: 世界你好! 现在总和是 0xc000094060 请帮忙打印当前金额。 您不是打印通道中的值,而是打印通道! 尝试: package main import "fmt" import "time" func add (ch chan int, n int){ sum :=0 for i:= 0;i<n;i++{ sum = sum+i } ch <- sum fmt.Println("Sum is",sum) } func display(ch chan int){ fmt.Println("Sum is now", <-ch) } func main() { ch :=make(chan int) go add(ch, 10) go display(ch) fmt.Println("Hello World!") time.Sleep(time.Second) } 另外,为什么要在 goroutine 中运行 display 呢? 如果你在 add 中做了一些复杂的事情并且花费的时间超过 1 秒,那么这个应用程序将停止并且不执行任何操作。也许看看等待组。

回答 1 投票 0

GoESL 与时间:呼叫并非源自 FreeSWITCH 中的某个点

我正在将 GoESL (https://github.com/0x19/goesl) 与 Temporal 集成,以通过 FreeSWITCH 自动拨号。该设置允许 1,000 个并发通道和每秒 50 个调用 (CPS)。每拨一个...

回答 1 投票 0

Java ExecutorService:- 当事件发生时通知线程唤醒

我有一个 Manager 类,多个线程向其中注册自己(使用 UUID 为每个请求生成唯一标识符),提供要处理的有效负载并从

回答 2 投票 0

如何将Python生成器转换为异步生成器?

我在Python中有一个生成器函数,它是IO绑定的。我想将其转换为异步生成器,其中生成器循环在单独的进程或线程中运行。最好,我想你...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.