国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

c++ - 如何在python的阻塞的函數中獲取變量值

瀏覽:121日期:2022-10-11 11:57:24

問題描述

目前是使用C++嵌入式的python函數python函數是阻塞式的接收服務器消息直到退出監聽才會有返回值監聽中收到消息會調用python的一個回調函數,可以獲取到收到的消息所以要怎么樣來返回消息給C++

EDIT:代碼如下callback打印可以打印正確數據,問題是這里用pika庫寫的rabbitMQ 的client就是為了不用rabbitMQ的C庫現在有一種考慮就是再用C寫一個python可以調的module然后在回調函數里面調,就是感覺有點丑陋。

#!/usr/bin/env pythonimport pikaimport sysmessage = ''def callback(ch, method, properties, body): message = body print(method.routing_key) return message def consume(): connection = pika.BlockingConnection(pika.ConnectionParameters(host=’localhost’)) channel = connection.channel() result = channel.queue_declare(exclusive=True) queue_name = result.method.queue channel.queue_bind(exchange=’normalEx’, routing_key=’remote’, queue=queue_name) print(’ [*] Waiting for logs. To exit press CTRL+C’) channel.basic_consume(callback, queue=queue_name, no_ack=True) channel.start_consuming()

問題解答

回答1:

處于堵塞的函數, 都需要等到收到數據或者等待超時才能返回的, 如果你想要快點返回, 就采用不堵塞的方式咯,只不過這樣會比較蛋疼

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 敦化市| 将乐县| 正安县| 丰台区| 鸡泽县| 施秉县| 东乡族自治县| 乌兰浩特市| 方城县| 弥勒县| 鸡泽县| 景谷| 日照市| 肇东市| 陆丰市| 祁连县| 南昌市| 恩平市| 雅安市| 安义县| 祁阳县| 庄浪县| 登封市| 湘潭县| 泸定县| 阳春市| 肇州县| 江西省| 津市市| 鄂托克旗| 潜山县| 运城市| 吴忠市| 樟树市| 石景山区| 宜昌市| 新竹县| 苏州市| 玉溪市| 彩票| 靖州|