Another Thread Locked

"new intel imac 7.2 where have my plugins gone!!!! argh"
seemed like a reasonable one to me, though the last post said something like "internal logic AUs are good, but I can't use them" which isn't correct. First, Logic's plugins aren't AU, second, the Logic plugins in 7.2 should be Universal, third, all the AU's which come with OS X on Intel should be Universal Binaries. I wonder what he was referring to?
The locked thread also discussed performance comparisons between Logic on the Intel iMac and PowerPC systems. Another reasonable topic of interest here.
Uh-oh... I hope I haven't crossed the line...

I don't think it's so bad that the old thread was locked, since an answer to the original question had been established and the thread was accumulating misinformation and complaints. But I'll take advantage of this thread to (1) clarify a comment I made on the old thread and (2) ask a closely related question.
(1) First the clarification: someone pointed out that AUs and VSTs need to be universal binaries to run inside a UB host. In response, I wrote "I don't know about VSTs", but I only wrote that because I was focusing on Logic (which doesn't run VSTs at all, of course). I didn't mean to call into question whether a UB host could run non-UB VSTs; I expect one couldn't.
(2) Now the question: I understand that (ignoring the Rosetta option) an Intel Mac running Logic 7.2 can't host AU plug-ins unless those plug-ins are Universal Binaries. That makes sense to me. But what about Logic 7.2 running on the older G4/G5 architecture? Am I right to assume that Logic 7.2 running on a G5 (not an intel Mac) can host the same non-UB AUs as Logic 7.1?
Dual G5 2.0GHz   Mac OS X (10.4.2)  

Similar Messages

  • Are you suppose to access UIView from another thread?

    A lot of UI events in my apps take place in another thread. So in my uivewcontroller, it catches a button click for example, it launches a NSThread with some parameter. The reason I decided to use a thread is because if the duration takes long the UI completely locks up. The thread then fetches for some result and access a pointer to a UIView (a UILabel for example) and update it's content.
    Now, is this model correct? I'm running in cases where setting the UILabel.text from the thread sometimes work, sometimes doesnt. I'm not sure how to debug. If I change the thread call to a standard method call (which blocks until results are ready) the text is updated correctly.
    Any hints?

    http://developer.apple.com/documentation/Cocoa/Conceptual/Multithreading/ThreadS afetySummary/chapter950_section2.html

  • Why is a thread locked?

    I'm just wondering if someone can tell me why the thread at "http://discussions.apple.com/thread.jspa?threadID=564703&tstart=0" has been locked?
    Apple has taken my computer for repair, so I was intending to provide an update (a positive one, I hope) once I receive it back; I can't do that now.
    Thanks

    Thanks for your reply.
    I was hoping my experience would help other people decide whether or not to ask for a fix. If the noise doesn't bother you, then why would you want to have random parts of your otherwise working computer replaced? But it bothered me, so I was willing to take the risk.
    I note that another thread discussing problematic macbooks (http://discussions.apple.com/thread.jspa?threadID=567126&tstart=0) has been locked.
    I was hoping to hear something from whoever locked it...

  • Keymapping (follow up from another thread)

    To follow up on another thread, I checked out the keymappings and found most of what I was looking for.
    Only a couple of things I miss:
    1. SHIFT + TAB doesn't pull the text back with it if the text is not selected. I am convised most editors do this and I keep find myself trying to do it in JDev and it doesn't work, and then I go in a huff.
    2. Ctrl+K, Ctrl+L to perform a word match forwards or backwards, based purely on text in the document, ie. not syntax/context sensitive. This was one of my most used/most time saved features in Netbeans.

    Hi,
    don't understand what 1) is supposed to do. Can you explain this further? Winword and TextPad behave differently. I tried NetBeans and shift+tab is doing nothing.
    For 2) Is it the same as
    pressing ctrl+f to enter a search string and then continuing with F3 for forward matches and shift+F3 for backward matches? If you select a string before pressing ctrl+f then this string is added to the search list.
    If yes, then you can change the key mapping in Tools-->Preferences --> Accelerators to the keyboard combination you are most familiar with (look for "find").
    Frank

  • How to use ImageContr​ol on another thread out main

    Hi All,
    I'm looking to use ImageControl (ImageControl.fp) on another thread out main thread 
    In my second thread i try to update image but i have a error (This panel operation can be performed (if a top-level panel) only in the thread in which the panel was created, or (if a child panel) only in the thread in which the top-level parent panel was created.)
    Here my code
    Main thread :
    ImageControl_ConvertFromDecoration (panelHandle, PANEL_IMAGECTRL, 0);
    ImageControl_SetZoomToFit (panelHandle, PANEL_IMAGECTRL, 1);
    ImageControl_SetAttribute (panelHandle, PANEL_IMAGECTRL, ATTR_IMAGECTRL_SHOW_SCROLLBARS, 0);
     hdleThread = CreateThread(NULL, 0,  (LPTHREAD_START_ROUTINE) ThreadTest,  NULL,  0, &idThread);
    Secand thread :
    int ThreadTest (void * data)
    ImageControl_SetZoomToFit (panelHandle, PANEL_IMAGECTRL, 1);
    iIdError  =    ImageControl_SetAttribute (panelHandle, PANEL_IMAGECTRL, ATTR_IMAGECTRL_IMAGE, imageToDisplay);
    // iIdError  = -129
    Could you help me ?
    Thankyou

    many thanks.  I should have thought of the need for using the Target Display Mode. 
    tony

  • How can I pass an exception from one thread to another thread

    If I create a new class, that will extends the class Thread, the methode run() can not be use with the statement Throws Exeption .
    The question now: Is there any possibility to pass an exception from one thread to another thread?
    Thx.

    It really depends on what you want to do with your exception. Is there some sort of global handler that will process the exceptions in some meaningful way? Unless you have that, there's not much point in throwing an exception in a thread, unless you simply want the stack trace generated.
    Presuming that you have a global handler that can catch exceptions, nest your Exception subclass inside a RuntimeException:
    public class NestedRuntimeException extends RuntimeException
        private final m_nestedException;
        public NestedRuntimeException(final Exception originalException)
            super("An exception occurred with message: " + originalException.getMessage());
            m_nestedException;
        public Exception getNestedException()
            return m_nestedException;
    }Your global handler can catch the NestedRuntimeException or be supplied it to process by the thread group.

  • How to refresh a JTable of a class from another thread class?

    there is an application, in server side ,there are four classes, one is a class called face class that create an JInternalFrame and on it screen a JTable, another is a class the a thread ,which accept socket from client, when it accept the client socket, it deal the data and insert into db,then notify the face class to refresh the JTable,but in the thread class I used JTable's revalidate() and updateUI() method, the JTable does not refresh ,how should i do, pls give me help ,thank you very much
    1,first file is a class that create a JInternalFrame,and on it there is a table
    public class OutFace{
    public JInternalFrame createOutFace(){
    JInternalFrame jf = new JInternalFram();
    TableModel tm = new MyTableModel();
    JTable jt = new JTable(tm);
    JScrollPane jsp = new JScrollPane();
    jsp.add(jt);
    jf.getContentPane().add(jsp);
    return jf;
    2,the second file is the main face ,there is a button,when press the button,screen the JInternalFrame. there is also a thread is beggining started .
    public class MainFace extends JFrame implements ActionListener,Runnable{
    JButton jb = new JButton("create JInternalFrame");
    jb.addActionListener(this);
    JFrame fram = new JFrame();
    public void performance(ActionEvent e){
    JInternalFrame jif = new OutFace().createOutFace(); frame.getContentPane().add(JInternalFrame,BorderLayout.CENTER);
    public static void main(String[] args){
    frame.getContentPane().add(jb,BorderLayout.NORTH);
    frame.pack();
    frame.setVisible(true);
    ServerSokct ss = new ServerSocket(10000);
    Socket skt = ss.accept()'
    new ServerThread(skt).start();
    3.the third file is a thread class, there is a serversoket ,and accept the client side data,and want to refresh the JTable of the JInternalFrame
    public class ServerThread extends Thread{
    private skt;
    public ServerThread(Sokcet skt){
    this.skt = skt;
    public void run(){
    OutputObjectStream oos = null;
    InputObjectStream ios = null;
    try{
    Boolean flag = flag;
    //here i want to refresh the JTable,how to write??
    catch(){}
    4.second is the TableModel
    public class MyTableModel{
    public TableModel createTableModel(){
    String[][] data = getData();
    TableModel tm = AbstractTableModel(
    return tm;
    public String[][] getData(){
    }

    Use the "code" formatting tags when posting code.
    Read this article on [url http://www.physci.org/codes/sscce.jsp]Creating a Simple Demo Program before posting any more code.
    Here is an example that updates a table from another thread:
    http://forum.java.sun.com/thread.jspa?forumID=57&threadID=435487

  • WLS Container Threads LOCKED

    Apologize for this cross-post but I posted in in probably wrong group
    Found several WLS Jrockit Threads LOCKED. We are using jrockit81sp2rp1_141_06
    System got HUNG
    All MUXERS are LOCKED show SocketResetException that seems funny ?
    Thanks
    Harish
    [enablersthreaddump.txt]

    Hi,
    I'm also facing the same problem, but my server is WLI 8.1 SP2. When we restarted the server for couple of times, it started working fine. but why it is coming? also restarting production server is not a possible solution.
    Any one has answers?
    Thanks,
    Chandra. T

  • Catching an exception thrown from another thread

    I have a SocketServer that creates new threads to handle incoming clients. If one of the threads throw a SQLException is it possible to catch that exception in the SocketServer that created that thread.
    I tried implementing this code and I cannot get the server to catch an exception thrown in the thread. Are my assumptions correct?
    I was reading something about Thread Groups and implementing an uncoughtException() method, but this looked like overkill.
    Thanks for your time!
    Some Example code would be the following where the ClientThread will do a database query which could cause an SQLException. I'd like to catch that exception in my Socket Server
          try
                 new ClientThread( socketServer.accept() , host, connection ).start();
          catch( SQLException e )
                 System.out.println( "DataSource Connection Problem" );
                  e.printStackTrace();
          }

    hehe, why?
    The server's job is to listen for an incoming message from a client and pass it off to a thread to handle the client. Otherwise the server will have to block on that incoming port untill it has finished handling the client and usually there are many incoming clients continuously.
    The reason I would want to catch an exception in the server based on the SQLException thrown in the thread is because the SQLException is usually going to be due to the fact the datasource connection has become unavalable, or needs to be refreshed. This datasource connection is a private variable stored in the socket server. The SocketServer now needs to know that it has to refresh that datasource connection. I would normally try to use somesort of flag to set the variable but to throw another wrench into my dilemma, the SocketServer is actually its own thread. So I can't make any of these variables static, which means I can't have the thread call a method on teh socket server to change the status flag. :)
    I guess I need implement some sort of Listener that the thread can notify when a datasource connection goes down?
    Thanks for the help so far, I figured java would not want one thread to catch another thread's exceptions, but I just wanted to make sure.

  • Thread lock in WL 8.1-on jRockit (queryMbeans)

    I have noticed in our thread dumps of Weblogic 8.1 managed servers, the following lock:
    "ExecuteThread: '2' for queue: 'weblogic.admin.RMI'" id=186 idx=0x182 tid=5292 prio=5 alive, in native, native_blocked, daemon
    at jrockit/vm/Allocator.allocLargeArray(JIZ)Ljava/lang/Object;(Native Method)
    at jrockit/vm/Allocator.allocArray(JIZ)Ljava/lang/Object;(Unknown Source)
    at java/util/HashMap.resize(I)V(Unknown Source)
    at java/util/HashMap.addEntry(ILjava/lang/Object;Ljava/lang/Object;I)V(Unknown Source)
    at java/util/HashMap.put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
    at java/util/HashSet.add(Ljava/lang/Object;)Z(HashSet.java:192)
    at com/sun/management/jmx/RepositorySupport.query(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;(RepositorySupport.java:241)
    at com/sun/management/jmx/MBeanServerImpl.queryMBeans(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;(MBeanServerImpl.java:1042)
    ^-- Holding lock: weblogic/management/internal/RemoteMBeanServerImpl@0x2000000008e78fc0[fat lock]
    at weblogic/management/internal/RemoteMBeanServerImpl.queryMBeans(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;(RemoteMBeanServerImpl.java:911)
    at com/sun/management/jmx/MBeanServerImpl.queryNames(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;(MBeanServerImpl.java:1075)
    at weblogic/management/internal/MBeanHomeImpl.mbeanServerQuery(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;(MBeanHomeImpl.java:487)
    at weblogic/management/internal/MBeanHomeImpl.getMBeansByClass(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;(MBeanHomeImpl.java:311)
    at weblogic/management/internal/MBeanHomeImpl_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)
    at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:492)
    at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:435)
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)
    at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:430)
    at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:35)
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:183)
    at jrockit/vm/RNI.c2java(JJJJ)V(Native Method)
    -- end of trace
    Then a big number of other threads are blocked by this lock. An example is:
    "ExecuteThread: '1' for queue: 'HZOZMsgEjbExecuteThreadQueue'" id=17 idx=0x30 tid=5123 prio=5 alive, in native, blocked, daemon
    -- Blocked trying to get lock: weblogic/management/internal/RemoteMBeanServerImpl@0x2000000008e78fc0[fat lock]
    at jrockit/vm/Threads.waitForSignal(J)Z(Native Method)
    at jrockit/vm/Locks.fatLockBlockOrSpin(JLjrockit/vm/ObjectMonitor;II)V(Unknown Source)
    at jrockit/vm/Locks.lockFat(Ljava/lang/Object;JLjrockit/vm/ObjectMonitor;Z)Ljava/lang/Object;(Unknown Source)
    at jrockit/vm/Locks.monitorEnterSecondStage(Ljava/lang/Object;I)Ljava/lang/Object;(Unknown Source)
    at jrockit/vm/Locks.monitorEnter(Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
    at com/sun/management/jmx/MBeanServerImpl.internal_addObject(Ljava/lang/Object;Ljavax/management/ObjectName;)V(MBeanServerImpl.java:2379)
    at com/sun/management/jmx/MBeanServerImpl.registerMBean(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;(MBeanServerImpl.java:876)
    at weblogic/management/internal/RemoteMBeanServerImpl.private_registerMBean(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;(RemoteMBeanServerImpl.java:614)
    at weblogic/management/internal/RemoteMBeanServerImpl.registerMBean(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;(RemoteMBeanServerImpl.java:554)
    at weblogic/management/runtime/RuntimeMBeanDelegate.register()V(RuntimeMBeanDelegate.java:166)
    at weblogic/management/runtime/RuntimeMBeanDelegate.<init>(Ljava/lang/String;Lweblogic/management/runtime/RuntimeMBean;Z)V(RuntimeMBeanDelegate.java:122)
    at weblogic/management/runtime/RuntimeMBeanDelegate.<init>(Ljava/lang/String;Lweblogic/management/runtime/RuntimeMBean;)V(RuntimeMBeanDelegate.java:85)
    at weblogic/jms/frontend/FEConnection.<init>(Lweblogic/jms/frontend/FEConnectionFactory;Ljava/lang/String;Lweblogic/jms/common/JMSID;Lweblogic/jms/dispatcher/Dispatcher;IIJJJJLjava/lang/String;JZZIIIZZ)V(FEConnection.java:183)
    at weblogic/jms/frontend/FEConnectionFactory$1.run()Ljava/lang/Object;(FEConnectionFactory.java:434)
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)
    at weblogic/jms/frontend/FEConnectionFactory.connectionCreateInternal(Lweblogic/jms/dispatcher/DispatcherWrapper;Z)Lweblogic/jms/client/JMSConnection;(FEConnectionFactory.java:430)
    at weblogic/jms/frontend/FEConnectionFactory.connectionCreate(Lweblogic/jms/dispatcher/DispatcherWrapper;)Lweblogic/jms/client/JMSConnection;(FEConnectionFactory.java:371)
    at weblogic/jms/client/JMSConnectionFactory.createConnectionInternal(Ljava/lang/String;Ljava/lang/String;Z)Lweblogic/jms/client/JMSConnection;(JMSConnectionFactory.java:148)
    at weblogic/jms/client/JMSConnectionFactory.createQueueConnection()Ljavax/jms/QueueConnection;(JMSConnectionFactory.java:75)
    at gr/cosmote/common/util/UtilLib.putObjToQueue(IILjava/io/Serializable;JLgr/cosmote/common/bus/LoginInfo;)V(UtilLib.java:664)
    at gr/cosmote/common/util/UtilLib.putObjToQueue(IILjava/io/Serializable;Lgr/cosmote/common/bus/LoginInfo;)V(UtilLib.java:636)
    at gr/cosmote/bus/session/HZOZQueueBean.handleMozartCallbackVO(Lgr/cosmote/common/bus/mozartVOs/MozartCallbackVO;)V(HZOZQueueBean.java:418)
    at gr/cosmote/bus/session/HZOZQueueBean.onMessage(Ljavax/jms/Message;)V(HZOZQueueBean.java:191)
    at weblogic/ejb20/internal/MDListener.execute(Lweblogic/kernel/ExecuteThread;)V(MDListener.java:400)
    at weblogic/ejb20/internal/MDListener.transactionalOnMessage(Ljavax/jms/Message;)V(MDListener.java:333)
    at weblogic/ejb20/internal/MDListener.onMessage(Ljavax/jms/Message;)V(MDListener.java:298)
    at weblogic/jms/client/JMSSession.onMessage(Ljavax/jms/MessageListener;Lweblogic/jms/common/MessageImpl;)V(JMSSession.java:2686)
    at weblogic/jms/client/JMSSession.execute(Lweblogic/kernel/ExecuteThread;)V(JMSSession.java:2598)
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:183)
    at jrockit/vm/RNI.c2java(JJJJ)V(Native Method)
    -- end of trace
    What is this 'weblogic.admin.RMI' queue?
    What I understand so far is that the object that appears as locked (RemoteMBeanServerImpl) is used to initiate and instantiate ejb/rmi calls from the managed servers. Does it attempt some sort of connection to the admin? Something else quite interesting that I read somewhere, that when this call (queryMBeans) is performed, the result is handled by a non thread-safe collection object which could (as a result of a weblogic bug) result in an infinite loop.
    By the way, our set up is 1 cluster, 4 managed servers in 4 different machines. The admin is installed along with one of the managed. All servers are configured to start/stop/run independently.
    Anybody any ideas?

    hi,
    What is this 'weblogic.admin.RMI' queue has the threads executing the calls from remote managed servers to the Admin Server and from the Admin Server to the managed servers for internal status updates.
    There was a bug in wls 8.1 where the call the to the admin server from all the managed server in the cluster used to create a thread lock state.
    Contact the Oracle support for the related CR and the patch.
    thanks,
    Sandeep

  • Can i catch an exception from another thread?

    hi,guys,i have some code like this:
    public static void main(String[] args) {
    TimeoutThread time = new TimeoutThread(100,new TimeOutException("超时"));
    try{
    t.start();
    }catch(Exception e){
    System.out.println("eeeeeeeeeee");
    TimeoutThread will throws an exception when it runs ,but now i can't get "eeeeeeeeeee" from my console when i runs the main bolck code.
    i asked this question in concurrent forums,somebody told me that i can't.so ,i think if i can do this from aspect of jvm.
    thank you for your help
    Edited by: Darryl Burke -- Double post of how to catching exceptions from another thread locking

    user5449747 wrote:
    so ,i think if i can do this from aspect of jvm. What does that mean? You think you'll get a different answer in a different forum?
    You can't catch exceptions from another thread. It's that easy. You could somehow ensure that exceptions from that other thread are always caught and somehow passed to your thread, but that would be a different thing (you would still be catching the exception on the thread it is originating from, as is the only way).
    For example you can use setUncaughtExceptionHandler() on your thread to provide an object that handles an uncaught exceptions (and you could pass that uncaught exception to your other thread in some way).

  • Running another thread not to block UI

    I do some heavy operation inside the actionPerformed (load images from File Chooser, resize it for display and populate it in the ScrollPane etc) and I realize that the windows freezes until the whole operation is finished. And it doesn't really help that I do repaint() or validate(). I make some research and some of the books and people from forums say that I actually needed to dispatch another thread to run the heavy operation. So that I won't block the UI interface and can update things accordingly. But the problem is, I don't have any clear example to understand this concept. How to clean up the thread after operation finished. How can a thread notify the progress back and etc. I need to know how much images has been loaded so that I can update the progress bar and so on. Can anyone help me point out a good example? :D

    Think I should show my code snippet to you
    public void actionPerformed(ActionEvent e) {
            if (e.getSource() == BtnBrowse) {
                int returnVal = fcSelectFile.showDialog(this,"Select");
                if (returnVal == JFileChooser.APPROVE_OPTION) {
                    file= fcSelectFile.getSelectedFiles();
                    //This is where a real application would open the file.
                    Thread worker=new Thread(){
                            public void run(){
                                int count=0;
                                selectedFile=new JLabel[file.length]; 
                                while(count<file.length)
                                {   final int index=count;
                                    String actualFile=file[count].toString();
                                    String fileName= file[count].getName();
                                    selectedFile[count]=new JLabel(createImageIcon(actualFile,fileName));
                                    SwingUtilities.invokeLater(new Runnable(){
                                    public void run(){
                                    PnlImageHolder.add(selectedFile[index]);
                                    PnlImageHolder.repaint();
                                    PnlImageHolder.validate();
                                    count++;
                    worker.start();
                    ScpImageScroller.getViewport().add(PnlImageHolder);
    }

  • Link to another thread.

    The FAQ says that you can create a link to both a thread and a message using tags. I just right clicked on a thread title, clicked “Copy Link Location”, pasted and saw a url with a messageID. But if I wanted to use the {thread} tag, what id do I use?

    Where are you right clicking when you do that.
    If go to the forum page for this forum and right click on the title of this thread and "copy link location" I get...
    Link to another thread.
    which is clearly the thread ID.
    If however I do the same on your name under the "Last Post" column, I get...
    Re: Link to another thread.
    which I would expect as it's designed to take me to the last post which is a specific message.

  • Start timer from another thread

    I am working on a project which will receive command from telnet and start a timer.
    In the sock function, I use form reference to call timer.start(), but timer control cannot start Tick event:
    Here is code for sock functin after receive the command:
     static void appServer_NewRequestReceived(AppSession session, StringRequestInfo requestInfo)
                switch (requestInfo.Key.ToUpper())
                    case ("START"):
                        session.Send(requestInfo.Body);
                        changetimer(1, requestInfo.Body);
    break;}}
    Here is the function to call timer start:
      static void changetimer(int action, string incomingmsg)
                //timer1.Start();
                Form1 frm = (Form1)Application.OpenForms["form1"];
                switch (action)
                    case 1:
                         frm.timer1.Start();
                         break;
                    case 2:
                        frm.timer1.Stop();
                        break;
    and this is timer tick :
    private void timer1_Tick(object sender, EventArgs e)
                TimeSpan result = TimeSpan.FromSeconds(second);
                string fromTimeString = result.ToString();
                label1.Text = fromTimeString;
                second = second + 1;

    You should start the timer on the UI thread. You could use the Invoke method to access a UI element from another thread:
    static void changetimer(int action, string incomingmsg)
    //timer1.Start();
    Form1 frm = (Form1)Application.OpenForms["form1"];
    switch (action)
    case 1:
    frm.Invoke(new Action(() => { frm.timer1.Start(); }));
    break;
    case 2:
    frm.Invoke(new Action(() => { frm.timer1.Stop(); }));
    break;
    Hope that helps.
    Please remember to close your threads by marking helpful posts as answer and please start a new thread if you have a new question.

  • Shutting down a panel in one thread from another thread.

    For various reasons, I have a program with two threads (actually more than two, but only two are concerned here). One is the main panel that runs at startup, another is a Virtual O'Scope panel with a real-time display. Everything works more or less well, until it's time to exit the program.
    The main program starts by calling a routine to display the VO'scope; this routine calls CmtScheduleThreadPoolFunctionAdv to schedule the VOscope thread with the function VOscopePanelMain.
    VOscopePanelMain initializes things, displays the VOscope panel, and then calls RunUserInterface(); to process events in the VOscope panel.
    When it comes time to close the window, closing the panel (the X box in the upper right corner) triggers the panel callback CB_VoscopePanel, which processes the EVENT_CLOSE: event by calling QuitUserInterface(0); which, in turn, causes RunUserInterface to return to VOscopePanelMain, which then shuts things down, closes the panel properly, and exits. So far so good.
    int CVICALLBACK CB_VoscopePanel (int panel, int event, void *callbackData,
            int eventData1, int eventData2)
        int    iPanelHeight, iPanelWidth, iV2ControlLeft, iV2ControlWidth, iWidth,
            iT2ControlTop, iT2ControlHeight, iHeight, iLeft, iGap, iScreenTop, iScreenLeft,
            iTop, iBoxWidth;
        switch (event) {
            break;
        case EVENT_GOT_FOCUS: //happens when first displayed or refreshed
        case EVENT_PANEL_SIZE: //size the controls on the panel
           ... do stuff here;
            break;
        case EVENT_CLOSE:
            QuitUserInterface(0);  //stop VOscopePanelMain, which in turn closes the panel and cleans stuff up.
            break;
        return 0;
    However, I also want the panel to stop when I close the main program. The only way that I know how to do this cleanly is to have the main program (which has closed all of its panels and is in the process of shutting down) call VOSCOPE_Close_VOScope () which, in turn, calls CallPanelCallback (iHandle_VOscope, EVENT_CLOSE, 0, 0, 0); (which forces a call to CB_VoscopePanel above with the EVENT_CLOSE event), which should call QuitUserInterface, which should cause the RunUserInterface in VOscopePanelMain to return and let it continue to shut down. In addition, after calling CallPanelCallback, the shutdown routine calls CmtWaitForThreadPoolFunctionCompletion to wait for the VOscopePanelMain thread to actually quit and clean up before proceeding.
    But, of course, it doesn't since, and it took me a while to realize this. The call to QuitUserInterface isn't coming from inside of the VOscopePanelMain thread, it's coming from the main panel's thread - which is already in the process of shutting down. So, the main panel thread is telling itself to quit, VOscopePanelMain never gets the QuitUserInterface message, and things stall.
    So: how do I have one thread tell a panel in another thread to cleanly close? Or do I have to get complicated and either replace RunUserInterface in VOscopePanelMain with a loop that processes events manually and looks for a flag, or figure out something with a thread-safe queue? Any help appreciated.
    Attachments:
    Voscope.c ‏76 KB

    Sorry for delay in answering, it took me a while to find time to build up a working example.
    The attached program spawns a thread in a new thread pool and permit you to choose whether to close it from the main thread or the spawned thread itself.
    It appears that in such a minimal configuration the process works as expected. There may be some different configuration in your actual program that prevents this.
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?
    Attachments:
    ThreadPoolWithGUI.zip ‏7 KB

Maybe you are looking for

  • Event list view in iCal3?

    i went to the apple store to see iCal in 10.5. i still have 10.4 on my various computers between home and work. i was asking about how to view the list of events in a list window, like in iCal 2 in 10.4. in iCal2, i click on the small icon that looks

  • Remote: Albums sortet by album names and not by "Interpret"

    Hi, Why Remote sort the albums by album name? this is the second bug which is not "fixed" with the new version 2.0 of Remote. Again with the "Compilation" problem in my previous post I'm wondering why nobody is asking for that "bug"? The best solutio

  • Drag and drop shortcut files.

    If I drag a shortcut file (.lnk) into my air application how can I get a reference to the file the shortcut is related to instead of the shortcut file? Thanks!

  • Hyperion Financial Reports - Batch Email Distribution List disappeared

    In FR, when you schedule a batch, you can add e-mail addresses to a receipient list. These e-mail addresses can then be selected so these individuals receive the e-mail with the reports attached. Has anyone had the problem where the receipent list co

  • Why we use EJB

    please tell me that , why we use EJB , i searched it on google but didn't find the answer . Please help me out Thanks in advance ...