LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

When I give a queue a name, the name of the queue is always "queue out" which makes it hard to read

Hello I did give a few queue's a name and bundle them, when I want to un-bundle them they all have got the same name "queue out" how can I change this ?

 

Its_Me_0-1688810122472.png

 

Its_Me_1-1688810258853.png

 

This might be a strange question and it should be very easy but I can find it 

 

thank you all !

 

 

0 Kudos
Message 1 of 15
(1,619 Views)

There is no bundle in your picture. All you probably need to do is change the label of the cluster element.

0 Kudos
Message 2 of 15
(1,599 Views)

Well, I am going to ask you why that is a problem for you?

 

I mean, you would bundle an array of queue references to enable downstream code to have access to the queue.  But, wouldn't it be a LOT EASIER to just Obtain a reference to your named queue where you use it?  That is why you named the queue in the first place!

 

If you REALLY want to have a single wire containing all queue references by name, don't use a cluster!  Use a Void Variant and set the attributes as Object Name : Reference to Object.  The red green tree lookup is even faster than bundle unbundle and you can mix in a whole lot of named things besides queues


"Should be" isn't "Is" -Jay
0 Kudos
Message 3 of 15
(1,594 Views)

@~Its_Me~ wrote:

Hello I did give a few queue's a name and bundle them, when I want to un-bundle them they all have got the same name "queue out" how can I change this ?

 

Its_Me_0-1688810122472.png

 

Its_Me_1-1688810258853.png

 

This might be a strange question and it should be very easy but I can find it 

 

thank you all !


I think I understand your question, but if not sorry.

 

The name you specify for the queue is NOT the name of the output queue wire, it is an alias to the queue reference number. By naming a queue, you can obtain another reference to it in your program using Obtain Queue and the same name; thus you don't need a wire connecting two different parts of your program. There are advantages and disadvantages of using named queues, but that is another discussion.

0 Kudos
Message 4 of 15
(1,550 Views)

I think OP is trying to set the wire name (the thing shown in Unbundle-By-Name) rather than use the "Named Queue" feature.  If so, what OP  can do is right-click on their Bundle and "Create Constant" and change the named of items in that constant to the desired names.  

0 Kudos
Message 5 of 15
(1,503 Views)

@JÞB wrote:

 

If you REALLY want to have a single wire containing all queue references by name, don't use a cluster!  Use a Void Variant and set the attributes as Object Name : Reference to Object.  The red green tree lookup is even faster than bundle unbundle and you can mix in a whole lot of named things besides queues


Unbundle is zero overhead, so nothing can be faster than it.

0 Kudos
Message 6 of 15
(1,498 Views)

@drjdpowell wrote:

 

Unbundle is zero overhead, so nothing can be faster than it.

It can and usually does cause a data copy so zero cost is not quite right. For small data it is close enough to zero cost to still count as that but large strings or arrays is a different story.

But this data copy would happen in most other cases too except when retrieving entire queue items for instance.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 7 of 15
(1,495 Views)

@rolfk wrote:

@drjdpowell wrote:

 

Unbundle is zero overhead, so nothing can be faster than it.

It can and usually does cause a data copy so zero cost is not quite right. 


I'm pretty sure that unbundle by itself is no data copy.  I've verified that with the DETT tool and large arrays.  Even unbundle-change-bundle will usually be done in place, with no copy.  

0 Kudos
Message 8 of 15
(1,481 Views)

@drjdpowell wrote:

@rolfk wrote:

@drjdpowell wrote:

 

Unbundle is zero overhead, so nothing can be faster than it.

It can and usually does cause a data copy so zero cost is not quite right. 


I'm pretty sure that unbundle by itself is no data copy.  I've verified that with the DETT tool and large arrays.  Even unbundle-change-bundle will usually be done in place, with no copy.  


Nice info but, since the queue is named, there really is no reason to carry the reference around on a wire!  LabVIEW handles all the backend stuff for you like creating and destroying the queue memory space behind the scenes.   Worse,  if you do carry the queue reference in a cluster or variant attribute, you risk having the reference become invalid if all instances of Obtain Reference are matched with a close or a Close is called with force destroy? T.  Running a named queue reference wire around can be a nasty way of shooting off your own toes and should be avoided. 


"Should be" isn't "Is" -Jay
0 Kudos
Message 9 of 15
(1,449 Views)

@JÞB wrote:

Nice info but, since the queue is named, there really is no reason to carry the reference around on a wire! 


Or, since the Queue reference is carried around on a perfectly good wire, there is no reason to name it.  

Message 10 of 15
(1,436 Views)