TimeBasedFilter Policy Not Functional
还没有人认领这个 Issue。
评估
调研方向
首先,使用指定的 CycloneDDS 和 cyclonedds-python 版本,通过修改后的示例 examples/vehicle publisher.py 和 subscriber.py 重现报告的行为。跟踪 TimeBasedFilter QoS 如何应用于 DataReader,并验证修复完成后 subscriber.py 接收的频率约为 1 Hz,而不是 10 Hz。
由索引模型根据 Issue 内容生成。
描述
cyclonedds version = 0.10.3
cyclonedds-python version = 0.10.2
Assuming I understand the use case for the TimeBasedFilter QoS, I have been unable to get the TimeBasedFilter QoS policy to work. I have not experimented with the base C implementation or the C++ binding.
For a sanity check, I altered examples/vehicle, but I uncovered the problem in my specific application.
Expected behavior: subscriber.py prints the topic at approximately 1 Hz.
Actual behavior: subscriber.py prints the topic at approximately 10 Hz.
# Removed specific Topic QoS, using default.
domain_participant = DomainParticipant(0)
topic = Topic(domain_participant, 'Vehicle', Vehicle)
publisher = Publisher(domain_participant)
writer = DataWriter(publisher, topic)
vehicle = Vehicle(name="Dallara IL-15", x=200, y=200)
while True:
vehicle.x += random.choice([-1, 0, 1])
vehicle.y += random.choice([-1, 0, 1])
writer.write(vehicle)
print(">> Wrote vehicle")
time.sleep(0.1) # Changed to achieve ~ 10 Hz publish rate
class MyListener(Listener):
def on_liveliness_changed(self, reader, status):
print(">> Liveliness event")
listener = MyListener()
# Removed specific Topic QoS, using default.
reader_qos = Qos(
Policy.TimeBasedFilter(duration(seconds=1))
)
domain_participant = DomainParticipant(0)
topic = Topic(domain_participant, 'Vehicle', Vehicle)
subscriber = Subscriber(domain_participant)
reader = DataReader(domain_participant, topic, reader_qos, listener=listener)
for sample in reader.take_iter(timeout=duration(seconds=2)):
print(sample, datetime.now())
- 主要语言
- Python
- 星标
- 110
- 派生
- 68
- 平均合并
- 3 天 5 小时
- 30 天内合并 PR
- 1
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
eclipse-cyclonedds/cyclonedds-python 的其他 Issue
-
难度 4/5 3-5 天 新手友好度 52/100
-
Generated Python code is not interoperable when a union contains a member called "value"可能重新可做 关联的 PR 已关闭且未合并。 未关闭
难度 3/5 1-2 天 新手友好度 58/100
-
难度 4/5 3-5 天 新手友好度 48/100
-
难度 4/5 3-5 天 新手友好度 45/100
-
难度 4/5 3-5 天 新手友好度 48/100
eclipse-cyclonedds/cyclonedds-python#333 · 1 条评论 ·
查看 eclipse-cyclonedds/cyclonedds-python 的全部 Issue
相似的 Issue
-
type-bug
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
push_gh-pages fails on master branch on forks可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭good first issue infrastructure
难度 2/5 1-3 小时 新手友好度 76/100
kuznia-rdzeni/coreblocks#1135 ·
-
good first issue server
难度 2/5 1-3 小时 新手友好度 85/100
维护者通常 1 天内回复
-
documentation priority: high
难度 2/5 1-3 小时 新手友好度 78/100
a-lex-s/mealie-telegram-bot#54 ·
维护者通常 1 天内回复