DPS 6 worker threads monitor command?

In the deployment guide it states:
Directory Proxy Server allows you to configure how many threads the server maintains to
process requests. You configure this using the server property number-of-worker-threads,
described in number-of-worker-threads(5dpconf). As a rule of thumb, try setting this number
to 50 threads plus 20 threads for each data source used. To gauge whether the number is
sufficient, monitor the status of the Directory Proxy Server work queue on cn=Work
Queue,cn=System Resource,cn=instance-path,cn=Application
System,cn=DPS6.0,cn=Installed Product,cn=monitor.
How do you do an ldapsearch on monitor in a dps? I dont know how to do the command suggested in the manual.

ldapsearch -p port -h host -b cn=monitor -D 'cn=proxy manager' -w password cn=*

Similar Messages

  • DPS v6-7 worker threads maxNormalPriorityPeak?

    In the Deployment Guide, in discussing DPS worker threads and backend connections it states on page 54 "Also, the value of the maxNormalPriorityPeak attribute should remain low". What is comnsidered a low number? Or would the amount be specific to the scope or set up of the DPS. Thanks.

    This number represents the backlog of operations to be processed waiting in a work queue for a worker thread to be available.
    If the worker thread number is set correctly, the work queue should hold a small nb of ops.
    Peaks may occur at startup time (DPS receives a bunch of traffic while the connection pools are not initialized yet) or with transient high traffic. This parameter is directly related to flow control and memory consumption, so a 3digit number looks OK

  • ICA + Worker thread?!

    Hello everyone,
    I have a question concerning an image capture application which uses worker thread to transfer the newly captured images from the camera and in the same time to allow user input in the GUI. For the people who might be wondering what am i talking about - I use the ICA SDK to communicate with a camera that I have, my application enables the user to set all the possible camera settings via the user interface and in order for this user interface not to "freeze" during image transfer I use worker thread(second thread, the gui runs in the main application thread). Now, I implemented all this and it seems to work beautifully but I ask myself one question - What mechanism stops the simultaneous sending of transferObject request and for example setCameraSettings request? Example: The camera has the ability to shoot in the so called continuous mode so i start this mode, the camera begins shooting and transfernig images to the hard disk, in the same time I start changing the camera settings. As I said this works but I am afraid from what I do not know so, how does it work? If the approach is not right I thought about saving all the changes that the user made during transfer and send them to the camera only then when it is not busy, but why repairing something which is not borken? So, if anyone knows how the ICA handles such actions I will be glad to learn something new.
    Kind Regards
    -artOf...
    P.S. Sorry for the really long and confusing(for some) post.

    Hi etresoft,
    if I disable the ability to change settings while transfering images then the whole concept of multithreading I developed to keep the GUI alive will be useless. Well not useless but what happens on the user's monitor won't correspond to what happens in the camera(say the user is shooting images and simultaneously tries to change the shutter time - if I disable this change the GUI will show that the change has been made but this change will not actually be send to the camera), it will be like "laying to the user" and if I disable the changes to the GUI well then as I said my whole concept goes in the trash. Of course, there might be a "middle" way - not to change anything in the camera during a picture transfer(the picture transfers in continuous shooting mode come and go, there can be as much as 600 of them) this means, my application waits with sending any setCameraSettings commands until there is a window between transfers and then the command is send. It will be time expensive to implement and as I said I do not want to change something which is already working and possibly make it worst(my clients have tested the application for some time and never mentioned any problems concerning this issue) those are my arguments for delaying the code refactoring. Still, I am fully ready to do it if your oppinion guys here at the apple forum, who I really respect, is that I should do it and to just leave the application as it is, is a time bomb.
    Respect
    -artOf...

  • Creator Freeze Often -- SWING Worker thread also

    I'm developping an app with creator. And I have many freezes in several minutes long as some people mentioned before.
    I'm running win XP on an opeteron 244(1.8G) x2 , with 2G memory. I've updated creator to the latest updates, but it doesn't seem to be better.
    The things I found is that when I edit Session Bean , Creator takes especially long time to come up.
    At that time, SWING worker thread of Creator IDE also stopping, No update of display , I only look window frame.
    You know the SWING has a Single thread model ,so if some logic uses SWING worker's thread long time, all displying process will be stopped.
    Below is the stacktrace just after a few seconds when Creator freeze by editing Session Bean.
    I use the stacktrace tool at http://tmitevski.users.mcs2.netarray.com/trace.do
    Full thread dump Java HotSpot(TM) Client VM (1.5.0_04-b05 mixed mode):
    "StackTrace Remote Thread" prio=5 tid=0x48b10418 nid=0x368 waiting on condition [0x00000000..0x4e85fbac]
    "Inactive RequestProcessor thread [Was:TimedWeakReference/org.netbeans.modules.projectapi.TimedWeakReference]" daemon prio=2 tid=0x48cc9e78 nid=0x634 in Object.wait() [0x4e89f000..0x4e89fbe8]
         at java.lang.Object.wait(Native Method)
         at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:692)
         - locked <0x1eeb8620> (a java.lang.Object)
    "Inactive RequestProcessor thread [Was:Default RequestProcessor/org.netbeans.modules.editor.NbEditorUI$2]" daemon prio=2 tid=0x48d00d18 nid=0x814 in Object.wait() [0x4e79f000..0x4e79fce8]
         at java.lang.Object.wait(Native Method)
         at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:692)
         - locked <0x1eeb8690> (a java.lang.Object)
    "Inactive RequestProcessor thread [Was:Java Children Provider/org.netbeans.modules.java.ui.nodes.elements.SourceChildren$4]" daemon prio=2 tid=0x48ce0d98 nid=0xd8c in Object.wait() [0x4e65f000..0x4e65fae8]
         at java.lang.Object.wait(Native Method)
         at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:692)
         - locked <0x1edbfe00> (a java.lang.Object)
    "Inactive RequestProcessor thread [Was:Suggestions Broker/org.netbeans.modules.tasklist.suggestions.SuggestionsBroker$2]" daemon prio=2 tid=0x473e1c80 nid=0x9fc in Object.wait() [0x4b84f000..0x4b84fbe8]
         at java.lang.Object.wait(Native Method)
         at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:692)
         - locked <0x1ed09d38> (a java.lang.Object)
    "Timer-48" prio=7 tid=0x492d4748 nid=0x930 in Object.wait() [0x4e43f000..0x4e43fa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1eb90290> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-46" prio=7 tid=0x4831ede8 nid=0xff0 in Object.wait() [0x4e71f000..0x4e71fae8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1ea9f428> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-44" prio=7 tid=0x48b26ab0 nid=0xc50 in Object.wait() [0x4e81f000..0x4e81fb68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1dc0d688> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-42" prio=7 tid=0x50f3bb68 nid=0x8f0 in Object.wait() [0x4e7df000..0x4e7dfa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1db078b8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-40" prio=7 tid=0x48bbde20 nid=0xf0c in Object.wait() [0x4e75f000..0x4e75f9e8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1d85d2b8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-38" prio=7 tid=0x50e67840 nid=0x8a4 in Object.wait() [0x4e6df000..0x4e6dfae8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1d7bc160> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-36" prio=7 tid=0x48ba3f50 nid=0xf58 in Object.wait() [0x4e5df000..0x4e5dfd68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1d7bc1d8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-34" prio=7 tid=0x48abb270 nid=0xee8 in Object.wait() [0x4e53f000..0x4e53fb68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1d339d68> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-32" prio=7 tid=0x47a6e050 nid=0xe98 in Object.wait() [0x4e69f000..0x4e69fa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1b93e2e8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-30" prio=7 tid=0x4925bd38 nid=0x9a8 in Object.wait() [0x4e4bf000..0x4e4bfa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1b3022f0> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-28" prio=7 tid=0x4930aae8 nid=0x620 in Object.wait() [0x4b70f000..0x4b70fae8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1af19770> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-26" prio=7 tid=0x485620c8 nid=0x120 in Object.wait() [0x4e59f000..0x4e59fb68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1978f0f8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-24" prio=7 tid=0x46d7e9e8 nid=0xaf8 in Object.wait() [0x4e61f000..0x4e61fbe8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x196f19e8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "VCS Command Tasks Starter Loop" daemon prio=2 tid=0x48aeed00 nid=0x96c in Object.wait() [0x4e4ff000..0x4e4ffbe8]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x18841770> (a org.netbeans.modules.vcscore.commands.CommandProcessor)
         at java.lang.Object.wait(Object.java:474)
         at org.netbeans.modules.vcscore.commands.CommandProcessor.executorStarterLoop(CommandProcessor.java:757)
         - locked <0x18841770> (a org.netbeans.modules.vcscore.commands.CommandProcessor)
         at org.netbeans.modules.vcscore.commands.CommandProcessor.access$700(CommandProcessor.java:65)
         at org.netbeans.modules.vcscore.commands.CommandProcessor$5.run(CommandProcessor.java:776)
         at java.lang.Thread.run(Thread.java:595)
    "Timer-16" prio=7 tid=0x46fa81a8 nid=0x69c in Object.wait() [0x4e3ff000..0x4e3ffd68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x151bf408> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "Timer-12" prio=7 tid=0x479eacf0 nid=0x2ec in Object.wait() [0x4b4df000..0x4b4dfce8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0x1499b4e8> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "URLdisplayer" prio=7 tid=0x4865de20 nid=0xe2c in Object.wait() [0x4727f000..0x4727fd68]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x12a02bb0> (a org.netbeans.modules.extbrowser.NbDdeBrowserImpl$URLDisplayer)
         at java.lang.Object.wait(Object.java:474)
         at org.netbeans.modules.extbrowser.NbDdeBrowserImpl$URLDisplayer.getNextTask(NbDdeBrowserImpl.java:223)
         - locked <0x12a02bb0> (a org.netbeans.modules.extbrowser.NbDdeBrowserImpl$URLDisplayer)
         at org.netbeans.modules.extbrowser.NbDdeBrowserImpl$URLDisplayer.run(NbDdeBrowserImpl.java:235)
         at java.lang.Thread.run(Thread.java:595)
    "Text-Layout" prio=2 tid=0x475967e8 nid=0xa68 in Object.wait() [0x4b68f000..0x4b68fae8]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x129e8cd0> (a org.netbeans.editor.view.spi.ViewLayoutQueue)
         at java.lang.Object.wait(Object.java:474)
         at org.netbeans.editor.view.spi.ViewLayoutQueue.waitForTask(ViewLayoutQueue.java:128)
         - locked <0x129e8cd0> (a org.netbeans.editor.view.spi.ViewLayoutQueue)
         at org.netbeans.editor.view.spi.ViewLayoutQueue$LayoutThread.run(ViewLayoutQueue.java:182)
    "MDR event dispatcher" daemon prio=2 tid=0x47b8b450 nid=0x9c8 in Object.wait() [0x4b88f000..0x4b88fa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at org.netbeans.mdr.util.EventNotifier$EventsDelivery.run(EventNotifier.java:257)
         - locked <0x087d1b10> (a java.util.LinkedList)
         at java.lang.Thread.run(Thread.java:595)
    "DestroyJavaVM" prio=5 tid=0x00038890 nid=0x4e4 waiting on condition [0x00000000..0x0007fae8]
    "TimerQueue" daemon prio=5 tid=0x46da6908 nid=0x768 in Object.wait() [0x4716f000..0x4716fb68]
         at java.lang.Object.wait(Native Method)
         at javax.swing.TimerQueue.run(TimerQueue.java:233)
         - locked <0x07b22b68> (a javax.swing.TimerQueue)
         at java.lang.Thread.run(Thread.java:595)
    "AWT-EventQueue-1" prio=7 tid=0x46ea8478 nid=0x990 runnable [0x4820e000..0x4820fbe8]
         at java.net.Inet4AddressImpl.getHostByAddr(Native Method)
         at java.net.InetAddress$1.getHostByAddr(InetAddress.java:842)
         at java.net.InetAddress.getHostFromNameService(InetAddress.java:532)
         at java.net.InetAddress.getHostName(InetAddress.java:475)
         at java.net.InetAddress.getHostName(InetAddress.java:447)
         at java.net.InetSocketAddress.getHostName(InetSocketAddress.java:210)
         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:341)
         at java.net.Socket.connect(Socket.java:507)
         at java.net.Socket.connect(Socket.java:457)
         at java.net.Socket.<init>(Socket.java:365)
         at java.net.Socket.<init>(Socket.java:207)
         at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:142)
         at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:280)
         at com.mysql.jdbc.Connection.createNewIO(Connection.java:1774)
         at com.mysql.jdbc.Connection.<init>(Connection.java:437)
         at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:268)
         at com.sun.rave.sql.DesignTimeDataSource.getConnection(DesignTimeDataSource.java:238)
         at com.sun.rave.sql.DesignTimeDataSource.getConnection(DesignTimeDataSource.java:214)
         at com.sun.sql.rowset.JdbcRowSetXImpl.connect(JdbcRowSetXImpl.java:410)
         at com.sun.sql.rowset.JdbcRowSetXImpl.prepare(JdbcRowSetXImpl.java:532)
         at com.sun.sql.rowset.JdbcRowSetXImpl.execute(JdbcRowSetXImpl.java:349)
         at caico.jsf.svc.itemSvc.<init>(itemSvc.java:81)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
         at java.lang.Class.newInstance0(Class.java:350)
         at java.lang.Class.newInstance(Class.java:303)
         at com.sun.rave.insync.beans.BeansUnit.instantiateBean(BeansUnit.java:884)
         at com.sun.rave.insync.live.LiveUnit.ressurectDesignBean(LiveUnit.java:339)
         at com.sun.rave.insync.live.LiveUnit.resurrect(LiveUnit.java:406)
         at com.sun.rave.insync.live.LiveUnit.sync(LiveUnit.java:294)
         at com.sun.rave.insync.live.LiveUnitWrapper.sync(LiveUnitWrapper.java:115)
         at com.sun.rave.insync.models.FacesModel.syncImpl(FacesModel.java:899)
         at com.sun.rave.insync.Model.sync(Model.java:207)
         at com.sun.rave.insync.Model.sync(Model.java:173)
         at com.sun.rave.insync.ModelSet$WindowManagerPropertyRegistry.processNodes(ModelSet.java:107)
         at com.sun.rave.insync.ModelSet$WindowManagerPropertyRegistry.propertyChange(ModelSet.java:125)
         at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:333)
         at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:270)
         at org.netbeans.core.windows.RegistryImpl.doFirePropertyChange(RegistryImpl.java:249)
         at org.netbeans.core.windows.RegistryImpl.tryFireChanges(RegistryImpl.java:222)
         at org.netbeans.core.windows.RegistryImpl.selectedNodesChanged(RegistryImpl.java:186)
         at org.netbeans.core.windows.RegistryImpl.topComponentActivated(RegistryImpl.java:138)
         at org.netbeans.core.windows.WindowManagerImpl.notifyRegistryTopComponentActivated(WindowManagerImpl.java:893)
         at org.netbeans.core.windows.Central.setActiveMode(Central.java:182)
         at org.netbeans.core.windows.Central.userActivatedMode(Central.java:1451)
         at org.netbeans.core.windows.view.DefaultView.userActivatedModeView(DefaultView.java:591)
         at org.netbeans.core.windows.view.ui.TabbedHandler$ActivationManager.handleActivation(TabbedHandler.java:477)
         at org.netbeans.core.windows.view.ui.TabbedHandler$ActivationManager.eventDispatched(TabbedHandler.java:425)
         at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Toolkit.java:2206)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2100)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2099)
         at java.awt.Toolkit.notifyAWTEventListeners(Toolkit.java:2058)
         at java.awt.Component.dispatchEventImpl(Component.java:3867)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3889)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    "Creator Error Handler Listener" prio=5 tid=0x4665f3d8 nid=0xf70 runnable [0x481cf000..0x481cfce8]
         at java.net.PlainSocketImpl.socketAccept(Native Method)
         at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
         - locked <0x0793baf0> (a java.net.SocksSocketImpl)
         at java.net.ServerSocket.implAccept(ServerSocket.java:450)
         at java.net.ServerSocket.accept(ServerSocket.java:421)
         at com.sun.rave.errorhandler.DebugServerThread.run(DebugServerThread.java:81)
    "Java2D Disposer" daemon prio=10 tid=0x467d6760 nid=0xa08 in Object.wait() [0x46c8f000..0x46c8fce8]
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
         - locked <0x07451380> (a java.lang.ref.ReferenceQueue$Lock)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
         at sun.java2d.Disposer.run(Disposer.java:107)
         at java.lang.Thread.run(Thread.java:595)
    "Active Reference Queue Daemon" daemon prio=2 tid=0x467bb638 nid=0xb70 in Object.wait() [0x46c4f000..0x46c4fd68]
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
         - locked <0x07451408> (a java.lang.ref.ReferenceQueue$Lock)
         at org.openide.util.Utilities$ActiveQueue.run(Utilities.java:2465)
         at java.lang.Thread.run(Thread.java:595)
    "Timer-0" daemon prio=5 tid=0x4678f2f0 nid=0xaf0 in Object.wait() [0x46c0f000..0x46c0f9e8]
         at java.lang.Object.wait(Native Method)
         at java.util.TimerThread.mainLoop(Timer.java:509)
         - locked <0x07451498> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "AWT-Windows" daemon prio=7 tid=0x467a54a0 nid=0x790 runnable [0x46a6f000..0x46a6fa68]
         at sun.awt.windows.WToolkit.eventLoop(Native Method)
         at sun.awt.windows.WToolkit.run(WToolkit.java:269)
         at java.lang.Thread.run(Thread.java:595)
    "AWT-Shutdown" prio=5 tid=0x467a5008 nid=0xafc in Object.wait() [0x46a2f000..0x46a2fae8]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x07451568> (a java.lang.Object)
         at java.lang.Object.wait(Object.java:474)
         at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
         - locked <0x07451568> (a java.lang.Object)
         at java.lang.Thread.run(Thread.java:595)
    "CLI Requests Server" daemon prio=5 tid=0x4676b380 nid=0xa64 runnable [0x4693f000..0x4693fbe8]
         at java.net.PlainSocketImpl.socketAccept(Native Method)
         at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
         - locked <0x07451720> (a java.net.SocksSocketImpl)
         at java.net.ServerSocket.implAccept(ServerSocket.java:450)
         at java.net.ServerSocket.accept(ServerSocket.java:421)
         at org.netbeans.CLIHandler$Server.run(CLIHandler.java:758)
    "Low Memory Detector" daemon prio=5 tid=0x00ab83b8 nid=0xee0 runnable [0x00000000..0x00000000]
    "CompilerThread0" daemon prio=10 tid=0x00ab7020 nid=0x9c4 waiting on condition [0x00000000..0x465cfa4c]
    "Signal Dispatcher" daemon prio=10 tid=0x00ab6470 nid=0x31c runnable [0x00000000..0x00000000]
    "Finalizer" daemon prio=9 tid=0x00aa95e0 nid=0x85c in Object.wait() [0x4654f000..0x4654fa68]
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
         - locked <0x074519c0> (a java.lang.ref.ReferenceQueue$Lock)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
         at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    "Reference Handler" daemon prio=10 tid=0x00aa8150 nid=0xf1c in Object.wait() [0x4650f000..0x4650fae8]
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
         - locked <0x07451590> (a java.lang.ref.Reference$Lock)
    "VM Thread" prio=10 tid=0x00aa5780 nid=0x808 runnable
    "VM Periodic Task Thread" prio=10 tid=0x00ab9858 nid=0x1b0 waiting on condition

    Use a SwingUtilities.invokeLater(...) to invoke the main GUI. This will allow the button to repaint itself before the main GUI is invoked.

  • Worker thread not quite working

    I had the standard 'waiting for a database' gray box problem. So I put my db calls into a worker thread. It was impractical to use the WorkerThread class that Sun distributes, so I wrote my own (see below). This solved the problem in most but not all cases.
    In some situations, the user is looking at one window that overlaps another. When a button on the top window is pushed, the top window is dispose()'d of, and the worker thread is started. In this situation, the gray box problems rears its ugly head, despite the use of the worker thread.
    Could that dispose() be causing the problem? Do I need to repaint the remaing window before calling the worker? If so, what command should I use? repaint()? setVisible(true)?
    Any thoughts or suggestions would be appreciated.
    Barnet Wagman
    My worker thread code:
    public class BossClass {  // The worker thread is an inner class of this one
            // The following fields get used by the worker thread;
            // could this be a problem? I don't think so.
        private transient byte outcome;
        private transient Object resultObject;
        private transient URL url;
        private transient Thread mainThread;
        private transient boolean allDone;
            // Sends a command to a server and gets a returned object
        public synchronized void send(URL url) throws IOException {
            // ^ I've tried this with and without the synchronized - no difference
         this.url = url;
         mainThread = Thread.currentThread();
         allDone = false;
         new SendThread();
         while( !allDone ) {
             try { Thread.sleep(mnemonaface.Constants.SEND_OP_SLEEP_TIME); }
                        // I've tried the sleep time = 100, 500, 1000 milliseconds
             catch( InterruptedException ix ) {}
        class SendThread implements Runnable, Serializable {
         SendThread() {
             (new Thread(SendThread.this)).start();
         public void run() {
                URLConnection uc = url.openConnection();   
                // Various things get done with the url connection
                allDone = true;
    }

    Instead of your method and inner class try this :
    public void sendURL(URL url) {
         this.url = url;
         Runnable sender = new Runnable() {
              public void run() {
                   URLConnection uc = url.openConnection();
         SwingUtilities.invokeLater(sender);
    }I hope this helps,
    Denis

  • Servlet Exec Thread Monitor - MII 11.5

    We have some reports that get "stuck", and they consume CPU usage, so we have to go into Servlet Exec's Thread Monitor to kill these reports.
    Currently, we go into MII to manually check to see if there are any stuck reports.  It would be nice if we could have MII load these log files automatically and send us an eMail when a report is stuck, so I thought we could use the HTML loader to do this.  The problem is Servlet Exec has security, and it requires an ID and Password.  I thought I could use the HTTP Post action block to get around this, but for the life of me, I can't get it to work.
    Is it possible to use Logic Editor to open Servlet Exec's Thread Monitor screen, and if so, how?

    Hi Lino,
    Keep the original code of the applet.
    <APPLET NAME="myChart" CODEBASE="/Illuminator/Classes" CODE="iChart" ARCHIVE="illum8.zip" WIDTH="840" HEIGHT="400">
    <PARAM NAME="DisplayTemplate" VALUE="Demo_Project/Vale_POC/SampleChart.xml">
    <PARAM NAME="QueryTemplate" VALUE="Demo_Project/Vale_POC/QryValePOC.xml">
    <PARAM Name="TagName.1" VALUE="CylTemp1">
    </APPLET>
    In 11.5 existis guest user. add two parameters in you applet.
    <PARAM NAME="IllumLoginName" VALUE="Guest">
    <PARAM NAME="IllumLoginPassword" VALUE="Guest">
    I believe the best solution would be to use the SAP MII portal for developing your application and not the. NET. In SAP MII already have a lot tools ready for development of application.
    If you use frame follow the link.
    http://help.sap.com/saphelp_xmii115/helpdata/en/Security/Programmatic_Logins.htm
    Hope this help.
    Danilo Santos

  • Worker Thread and Helper Thread for Gauge updates

    Hi
    I know that in the Smart Ticket sample application there is an example with the implematation of "Each worker thread also has a helper thread that displays an animated gauge to indicate the progress of the worker thread".
    But i can't find the sample on java.sun.com anymore..:-(. Do you have the source code of smart ticket or even an example of the helper thread implemetation. The worker thread i have already implementated.
    Thanx
    Michael

    Here's a simple outline of what I do. This has been drastically stipped down from my actual code as I use teh message for all kinds of things incluing requests on a queue to the worker and resposes back. So in the real code I also have a success flag, a command type, an argument object and a result object with get and set methods for all of them.
    1) define an interface that the GUI code can implement and pass a reference to the worker which stores it in myTarget.
    interface MessageTarget
         void postMessage(Message m);
         void runMessage(Message m);
    }2) define a message class
    class Message implements Runnable
         Object data;
         MessageTarget target;
         Message(MessageTarget target, Object data)
              this.target = target;
              this.data = data;
         public void run(){target.runMessage(this);}
         public Object getData(){return data;}
         public void postMessage(){target.postMessage(this);}
    }3) implement the MessageTarget interface in the GUI
    // put a response from the database onto the swing queue
    public void postMessage(Message r)
         javax.swing.SwingUtilities.invokeLater((Runnable)r);
    // process messages
    public void runMessage(Message m)
         Object data = m.getData();
    }4) post messages back from the worker
           new Message(myTarget,myData).post();

  • Percentage of Worker Threads too high.

    Greetings. So I got an alert yesterday that my worker thread count was too high.  After doing some digging I've read several articles that the issue
    could be due to CPU pressure. However, my CPU was only at 55% during the time we got the alert.
    Also, we don't have anything like Log Shipping, Availability Groups, etc. that doesn't "really" count in this number happening in this server.
    What else could cause this? 
    TIA, ChrisRDBA

    16 processors, maxdop = 2.
    TIA, ChrisRDBA
    Hi Cris,
    16 Cores and what version of SQL Server (32 or 64bit)
    If the treadpool has not been configured by you the default is 352 threads in a 32bit environment and 704 in a 64bit environment (http://technet.microsoft.com/en-us/library/ms187024).
    That mean a huge amount of connections. I assume a bad application with long running operations.
    Check the sys.dm_os_schedulers and its current_task_count attributes and compare it to the sys.dm_os_waiting_tasks / sys.dm_exec_requests when it will occure again.
    But as Shanky has written - don't trust a monitoring tool because it seems to be a treshold which has been broken but nothing else. Threadpool starvation is a strange thing but you will be aware of it very very fast when the calls are coming that nobody
    is able to connect to the database.
    So - first of all check the version and the number of threads. Than decide whether it is critical or not .)
    MCM - SQL Server 2008
    MCSE - SQL Server 2012
    db Berater GmbH
    SQL Server Blog (german only)

  • Worker Threads: Created by model or by controller?

    Sometimes models needs to access blocking devices, like network cards, databases, files, and so on. This should be done by worker threads or services. But who is in charge of that? The controller or the model itself? I tend to say it is the model, as only the model knows about the fact that it accesses a blocking object. On the other hand, it is said that a model should be a POJO, so it would be the controller's job.
    Is there a best practice or general design rule?

    It's impossible to make a general recommendations, but I'd say in many cases the answer to this question is really that the worker threads are created by neither a model or controller.  Threads often need to be associated with processes and tasks which is independent of models and controllers.  Instead you can use dependency injection to inject references into controllers to a common object instances which control isolated threading logic and implementation and encapsulate it to server a given responsibility (such as blocking server communication), with the entity providing this functionality also providing event driven callbacks to the models and controllers, so that they can get notified of changes for tasks spawned based upon their requests.  For example, if you look at the Java JEE model, entity classes and controllers in that model usually never explicitly create or reference threads (that portion of JEE really a pretty general programming mechanism and is also applicable to client code in JavaFX).
    MVC isn't a panacea solution to everything.  In fact it tends to be overly quoted and widely misunderstood and what it actually is is open to different interpretation by different readers.  There is a great discussion of MVC by Martin Fowler.  Everybody claims to do MVC, and they are all doing it, they are just doing it in a different way, which is fine, but it means that it is not a very good reference in trying to communicate solutions to issues such as architecting a multi-threaded application.
    What I would recommend instead of analyzing your entire application from an MVC viewpoint, is to use CRC modeling on it (class/responsibilities/collaborations), you can google it to see how it works if you don't already know.  That way you are thinking about how to architect and build a solution to your application domain issues rather than trying to shoehorn solutions into a certain framework.  Sure MVC is a great thing and is appropriate for many things, just make sure you really want to think from that viewpoint for a particular piece of the solution you are building.
    With threading, you generally want to write as little concurrent code as possible.  You also want this code compartmentalized, so you only need to study the concurrent code in one place (hopefully a single class or at most a single package).  You also don't want the knowledge and use of the threads to leak.  For example, ensure that almost all the code you write is only accessing a single thread so that you don't have to worry about concurrency related bugs and reasoning about concurrency in most of your code.  This is the way the JavaFX system works.  It has multiple threads internally for application processing and rendering, but from a user point of view, all the user application code just runs on a single JavaFX application thread.  This makes the user code less error prone and easier to reason about and also simplifies the library API and usage greatly.
    So let's say you have a server communication API which makes use of a multithreaded client pool of server connections such as apache HTTP components.  Create a single class, e.g. Communicator with methods ResponseMessage send(Location destination, RequestMessage requestMessage) and void sendAsync(Location destination, RequestMessage requestMessage, Callback<ResponseMessage,Void> callback).  The async version, can make use of Platform.runLater, to ensure your callback is invoked on the JavaFX application thread - then your calling JavaFX application code never needs to worry about the internal threading implementation of the communicator, it just reacts to an event driven callback (the same way something like the snapshot API works).  If you need more fine grained feedback and control over the async task from your application, than rather than having a simple callback, you can return a Worker/Task which can be monitored for progress within your JavaFX application, see for instance the LoadWorker in WebEngine.  If your communication implementation is actually reasonably involved and can't be implemented in a single class, that is OK, just make Communicator a facade and use multiple classes in the internal communicator package implementation, but don't use any of that implementation outside of the communicator package.  You can use a dependency injection framework such as afterburner to inject a reference to a communicator into your FXML controllers.

  • Monitor command knocks out internet connection

    cisco 2651XM router
    IOS: c2600-adventerprisek9-mz.124-15.T9.bin
    fitted with NM-16-ESW switch module on to 172.1.16.xx
    I have a mail-and-web server plugged into fa1/14 on the switch module in this router, along with a PC plugged into fa1/7, and the router is connected to the internet.
    I'm using monitor commands to feed traffic data on f1/4 to fa1/7 thus:
    (config)#monitor session 1 source interface Fa1/14
    (config)#monitor session 1 destination interface Fa1/7
    The reason for this is I'm using wireshark on the PC (in f1/7) to watch traffic on the mail/web server (on f1/14) and it works great except that the monitor destination command knocks out my internet access on the PC. Without the monitor commands internet access is fine. I tried the whole thing again on a different PC and that lost the internet too so the problem is in the router.
    Is there a solution to this that will give me both the traffic feed and internet access? Thanks for any help.

    Hello Tony,
    unfortunately it looks like that your only option is to add a NIC to the PC
    http://www.cisco.com/en/US/docs/ios/12_3t/12_3t4/feature/guide/gt1636nm.html#wp1053663
    >> . You cannot configure a SPAN destination interface to receive ingress traffic. The interface does not forward any traffic except that required for the SPAN session.
    Hope to help
    Giuseppe

  • Thread count higher than max worker threads... Large number of suspended worker threads

    I have a SQL 2012 SP2 server that is getting High Thread count alerts in SCOM.  looking into the issue I found some interesting things that I am now at a loss for.  I have been searching around for a few hours now and havent found much other than
    making it more confusing.  I found this MSDN blog:
    Are my actual worker threads exceeding the sp_configure 'max worker threads' value?
    Running through that I found some interesting things.
    -Max worker threads is set to default for x64 of 512 threads
    running a thread count query found 547 current worker threads:
    SELECT
    SUM(current_workers_count) as [Current worker thread] FROM sys.dm_os_schedulers
    Taking it a step further found that there was 523 worker threads in a suspended state with a last_wait_type of MISCELLANEOUS:
    select is_preemptive,state,last_wait_type,count(*) as NumWorkers from sys.dm_os_workers
    Group by state,last_wait_type,is_preemptive
    order by count(*) desc
    is_preemptive    state    last_wait_type    NumWorkers
    0    SUSPENDED    MISCELLANEOUS    523
    This is not yet a production server, no one is connecting to the database and the front end software application is not being used on this server yet.  Essentially this is just an idle database server so I thought it might be a fluke, so I restarted
    the sql services and the thread counts cleared.  I left it alone and overnight the high thread count alert popped back up.  I looked at it again this morning and the exact same thing happend.  Same number of suspended workers etc and total worker
    threads of 523 and 547 respectively.
    Other than the one article I have found above I have not been able to find anything to help explain this or what the heck suspended miscellaneous worker threads are.  Any help would be appreciated...Thanks!

    Hello,
    Please run the following query. The text column should tell us what is running.
    SELECT
     task.task_address,
     task.parent_task_address,
     task.task_state,
     REQ.request_id,
     REQ.database_id,
     REQ.session_id,
     REQ.start_time,
     REQ.command,
     REQ.connection_id,
     REQ.task_address,
     QUERY.text
    FROM
    SYS.dm_exec_requests
    req
    INNER
    JOIN sys.dm_os_tasks
    task on
    req.task_address
    = task.task_address
    or req.task_address
    = task.parent_task_address
    Cross
    apply sys.dm_exec_sql_text
    (req.sql_handle)
    as query
    WHERE
    req.last_wait_type
    = 'MISCELLANEOUS'
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • Using SSRS local mode, receive invalid token error when trying to export the report when running in worker thread

    We're using ASP.net with .Net 4, developing with Visual Studio 2012.  We use SSRS 2012sp1 with local reports, so exporting the report ourselves instead of using a reportviewer control (and not using the SQL Reporting service).  The reports are
    executing fine when we export the report in the main thread, but if we spawn a worker thread and run a report there we receive the following error when calling Render():
    Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Failed to load expression host assembly. Details: Invalid token for impersonation - it cannot be duplicated.
    We only receive this when running a report that uses expressions on a separate thread.  I've tried running the application pool under all the default built-in accounts (NetworkService, etc), and under admin user accounts to no avail.
    This didn't occur with the previous version of our application which used .net 3.5.

    As mentioned, we are not using the Reportviewer control, we are rendering locally.  Not certain if that would make a difference.
    Also, I had tried using all the built-in accounts.  Just for kicks I changed it to LocalSystem again, then reset IIS (see image below).  I then tried to export the report in a worker thread and received the same error.
    Here is the text from the exception:
    Microsoft.Reporting.WebForms.LocalProcessingException: An error occurred during local report processing. ---> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Failed to load expression host assembly. Details: Invalid token for impersonation - it cannot be duplicated.
    at Microsoft.ReportingServices.RdlExpressions.ReportRuntime.ProcessLoadingExprHostException(ObjectType assemblyHolderObjectType, Exception e, ProcessingErrorCode errorCode)
    at Microsoft.ReportingServices.RdlExpressions.ReportRuntime.LoadCompiledCode(IExpressionHostAssemblyHolder expressionHostAssemblyHolder, Boolean includeParameters, Boolean parametersOnly, ObjectModelImpl reportObjectModel, ReportRuntimeSetup runtimeSetup)
    at Microsoft.ReportingServices.OnDemandProcessing.Merge.Init(Boolean includeParameters, Boolean parametersOnly)
    at Microsoft.ReportingServices.OnDemandProcessing.Merge.Init(ParameterInfoCollection parameters)
    at Microsoft.ReportingServices.ReportProcessing.Execution.ProcessReportOdp.CreateReportInstance(OnDemandProcessingContext odpContext, OnDemandMetadata odpMetadata, ReportSnapshot reportSnapshot, Merge& odpMerge)
    at Microsoft.ReportingServices.ReportProcessing.Execution.ProcessReportOdp.Execute(OnDemandProcessingContext& odpContext)
    at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReportOdpInitial.ProcessReport(ProcessingErrorContext errorContext, ExecutionLogContext executionLogContext, UserProfileState& userProfileState)
    at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer)
    at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.RenderReport(IRenderingExtension newRenderer, DateTime executionTimeStamp, ProcessingContext pc, RenderingContext rc, IChunkFactory yukonCompiledDefinition)
    at Microsoft.Reporting.LocalService.CreateSnapshotAndRender(ReportProcessing repProc, IRenderingExtension renderer, ProcessingContext pc, RenderingContext rc, SubreportCallbackHandler subreportHandler, ParameterInfoCollection parameters, DatasourceCredentialsCollection credentials)
    at Microsoft.Reporting.LocalService.Render(String format, String deviceInfo, String paginationMode, Boolean allowInternalRenderers, IEnumerable dataSources, CreateAndRegisterStream createStreamCallback)
    at Microsoft.Reporting.WebForms.LocalReport.InternalRender(String format, Boolean allowInternalRenderers, String deviceInfo, PageCountMode pageCountMode, CreateAndRegisterStream createStreamCallback, Warning[]& warnings)
    --- End of inner exception stack trace ---
    at Microsoft.Reporting.WebForms.LocalReport.InternalRender(String format, Boolean allowInternalRenderers, String deviceInfo, PageCountMode pageCountMode, CreateAndRegisterStream createStreamCallback, Warning[]& warnings)
    at Microsoft.Reporting.WebForms.LocalReport.InternalRender(String format, Boolean allowInternalRenderers, String deviceInfo, PageCountMode pageCountMode, String& mimeType, String& encoding, String& fileNameExtension, String[]& streams, Warning[]& warnings)
    at Microsoft.Reporting.WebForms.LocalReport.Render(String format, String deviceInfo, PageCountMode pageCountMode, String& mimeType, String& encoding, String& fileNameExtension, String[]& streams, Warning[]& warnings)
    at Microsoft.Reporting.WebForms.Report.Render(String format, String deviceInfo, String& mimeType, String& encoding, String& fileNameExtension, String[]& streams, Warning[]& warnings)
    at IxSS.Infolinx.Report.MicrosoftInfolinxReport.ExportReport(String strFileFullyQualifiedPath, String strExportType, String strFilterDesc, Dictionary`2 extraParams, String area)
    at IxSS.Infolinx.Report.MicrosoftInfolinxReport.ExportReport(String strFileFullyQualifiedPath, String strExportType, String strFilterDesc, Dictionary`2 extraParams)

  • Calling a delegate on the UI thread from a work thread inside a child class.

    Hi All,
    I've run into a snag developing a WPF multithreaded app where I need to call a method on the UI thread from my work thread, where the work thread is running a different class.
    Currently I am trying to use a delegate and an event in the 2nd class to call a method in the 1st class on the UI thread. This so far is not working as because the 2nd class is running in its own thread, it causes a runtime error when attempting to call
    the event.
    I've seen lots of solutions referring to using the dispatcher to solve this by invoking the code, however my work thread is running a different class than my UI thread, so it seems the dispatcher is not available?
    Below is as simplified an example as I can make of what I am trying to achieve. Currently the below code results in a "The calling thread cannot access this object because a different thread owns it." exception at runtime.
    The XAML side of this just produces a button connected to startThread2_Click() and a label which is then intended to be updated by the 2nd thread calling the updateLabelThreaded() function in the first thread when the button is clicked.
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    using System.Windows.Threading;
    using System.Threading;
    namespace multithreadtest
    public delegate void runInParent();
    public partial class MainWindow : Window
    public MainWindow()
    InitializeComponent();
    threadUpdateLabel.Content = "Thread 1";
    private void startThread2_Click(object sender, RoutedEventArgs e)
    thread2Class _Thread2 = new thread2Class();
    _Thread2.runInParentEvent += new runInParent(updateLabelThreaded);
    Thread thread = new Thread(new ThreadStart(_Thread2.threadedTestFunction));
    thread.Start();
    public void updateLabelThreaded()
    threadUpdateLabel.Content = "Thread 2 called me!";
    public class thread2Class
    public event runInParent runInParentEvent;
    public void threadedTestFunction()
    if (runInParentEvent != null)
    runInParentEvent();
    I'm unfortunately not very experienced with c# so I may well be going the complete wrong way about what I'm trying to do. In the larger application I am writing, fundamentally I just need to be able to call a codeblock in the UI thread when I'm in a different
    class on another thread (I am updating many different items on the UI thread when the work thread has performed certain steps, so ideally I want to keep as much UI code as possible out of the work thread. The work threads logic is also rather complicated as
    I am working with both a webAPI and a MySQL server, so keeping it all in its own class would be ideal)
    If a more thorough explanation of what I am trying to achieve would help please let me know.
    Any help with either solving the above problem, or suggestions for alternative ways I could get the class in the UI thread to do something when prompted by the 2nd class in the 2nd thread would be appreciated.
    Thanks :)

    If I follow the explanation, I think you can use MVVM Light messenger.
    You can install it using NuGet.
    Search on mvvm light libraries only.
    You right click solution in solution explorer and choose manage nugget...
    So long as you're not accessing ui stuff on these other threads.
    using GalaSoft.MvvmLight.Messaging;
    namespace wpf_Tester
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    public MainWindow()
    InitializeComponent();
    Messenger.Default.Register<String>(this, (action) => ReceiveString(action));
    private void ReceiveString(string msg)
    MessageBox.Show(msg);
    Dispatcher.BeginInvoke((Action)delegate()
    tb.Text = msg;
    private void Button_Click(object sender, RoutedEventArgs e)
    Task.Factory.StartNew(() => {
    Messenger.Default.Send<String>("Hello World");
    What the above does is start up a new thread - that startnew does that.
    It sends of message of type string which the main window has subscribed to....it gets that and puts up a message box.
    The message is sent from the window to the window in that but this will work across any classes in a solution.
    Note that the receive acts on whichever thread the message is sent from.
    I would usually be altering properties of a viewmodel with such code which have no thread affinity.
    If you're then going to directly access properties of ui elements then you need to use Dispatcher.BeginInvoke to get back to the UI thread.
    I do that with an anonymous action in that bit of code but you can call a method or whatever instead if your logic is more complicated or you need it to be re-usable.
    http://social.technet.microsoft.com/wiki/contents/articles/26070.aspx
    Hope that helps.
    Technet articles: Uneventful MVVM;
    All my Technet Articles

  • What is the max. count of internal worker-threads in B1iSN 88?

    Hi Experts,
    We have an installation of B1iSN 88 with an ECC 6.0 and 54 SAP Business One installation. The Hardware is 8 Core multi-threads processor. 32GB Memory. Now we have a problem with the queuing of Events. What we have found is that the configuration of the internal worker-threads is set to -1(please see below for the settings). We change the settings to xcl.threads=20 and it improves the queuing. My question is what is the max. count of internal worker-threads per core? so that we can know how many worker will set and if we need to upgrade the CPU to 16 Core..
    # The max. count of internal worker-threads afforded for the internal Scheduler (defaults to 1)
    # The value of 0 means that there is no limit (what in general should not be set up).
    # A negative value means the count of threads per available processor
    xcl.threads=-1
    Regards,
    Wilson

    You're very welcome.
    Yes, they are very nice machines. 
    What a jump in performance when I swapped out the Pentium 4 620 mine had, for the PD 945, and tossed in 4 GB of memory.
    That box will also run the Radeon HD 6570 with no problem too, which is what I put in mine.
    The downside of that model is that there are no settings for ahci or raid.
    I own or have owned every CMT since the d510 with the exception of the dc7900.
    My main PC is now the 8200 Elite CMT which I installed W8.1 on.
    It has an i7-2600 processor and 32 GB of memory, 1 TB SATA III hard drive.
    I threw in a Radeon HD 6670 in that one.
    Best Regards,
    Paul

  • SSL connections blocking worker threads on DS 5.2 patch 4

    Hi,
    Is it normal for an idle SSL connection to consume a worker thread within the directory server?
    We have recently enabled SSL on a number of our directory servers (5.2 patch 4) and have run into problems with the server hanging. We have a number of application servers, each opening a pool of connections to the servers via JNDI. It seems that once 30 SSL connections have been established to a give LDAP server, the server will hang. By hang I mean the server is accepting TCP connections, but not responding to LDAP requests.
    The server can deal with a lot more than 30 non-ssl connections. I'm guessing that SSL connections need to maintain state, which is what is tying up the worker threads.
    Is this normal, and is it docuemented anywhere? Currently I'm looking at terminating the SSL connections on a load balancer in front of the LDAP servers, or perhaps on an LDAP proxy. Any other suggestions as to how this is typically dealt with?
    thanks,
    R

    Thank you Gautam.
    On further testing yesterday, we discovered that the problem is just as you have described. Our application servers are opening an initial pool of five connections, but typically only using one of those connections. The one connection the server uses to make an LDAP request behaves 'normally', not tying up a thread on the LDAP server. The other four sit there blocking a thread each, until eventually we hit the nsslapd-threadnumber.
    Based on that discovery, we're having the application changed so that its initial LDAP connection pool size is one, which appears to address the problem. That way connections are only established and added to the pool as they are required, resulting in well behaved connections to the LDAP server.
    Thanks for the quick reply... The Sunsolve note is helpful, as is the info about the nsslapd-ioblocktimeout parameter.
    kind regards,
    R

Maybe you are looking for

  • Error message when opening itunes; won't update or uninstall itunes

    a few months ago, i downloaded the new version of itunes and safari together. once downloaded, my computer restarted and wouldn't turn back on. i repeatedly attempted to run my computer but, once it was turned back on, it just stayed on a solid black

  • How to remove recovery partition of HP Pavilion X2 10

    HP Pavilion X2 10 comes with a 32GB drive, like many other Windows 8 tables, and only 14GB is available to users. The free space is decreases as I install and save data to the device, and quickly reached 3GB to a level that machine start reising wari

  • Navigation between records in a JSP application

    Hi, I would like to know how to provide navigation between records in a tabular form liked JSP application using JDeveloper 3.2 without using the Oracle or Default template. I can do it with a singular record view but not in a tabular view. I like to

  • Help extracting URL's from PDFs I create

    Using Acrobat pro 9.+ I have several PDF catalogs I have created, and what I need t o do is extract the URL's for each 100 page catalog. These are added URL's using the Acrobat linking tool Ideally they would be one URL per row, and have at least a m

  • What Virus Protection to buy?

    I was told by my local mac shop not to buy antivirus, said it was a waste of money and it would slow my machine down. i'm using clamx. is this enought