mathworks / mathworks/MATLAB-extension-for-vscode

Output not displayed in terminal when using `parallel.pool.DataQueue`, `afterEach`, `send`

Open
#257 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
435
Forks
40
PR merge metrics
No merged PRs in 30d

Description

Hi,

After starting a parpool of processes or threads, if I call send to DataQueue to display something on terminal nothing actually gets printed.

Steps to reproduce:

parpool("Threads",20);
% parpool("Processes",20);

q = parallel.pool.DataQueue;
afterEach(q,@disp);

parfor i = 1:100
    send(q,i);
end

Could you please have a look?
Thanks

  • MATLAB Version: 24.2.0.2740171 (R2024b) Update
  • OS Version: Red Hat Enterprise Linux 8.10
  • VS Code Version: 1.98.2
  • Extension Version: 1.3.3

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with the provided parpool, DataQueue, afterEach, and send example in VS Code using the reported MATLAB and extension versions. Inspect how the extension handles MATLAB terminal output from parallel workers. Done means values sent through the DataQueue are displayed in the terminal for both process and thread pools.

Written by the indexing model from the issue text.

Assessment

Tech stack
matlab, typescript, vscode
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.