Reapeatdly calling a function in a thread

Hi,
I'm facing an issue, i need to call a function after every 10 seconds in a thread.
I'm not sure if i can use SIGALRM in this case or SELECT.
Please suggest , how this can be efficienlty achieved.
Thanks

There are 2 things that you have to implement:
1. create a thread
2. write a loop, that will do sleep(10) and call the function
I suppose you know how to create a thread, so to answer
your question here is a simple program, that sleeps 10
seconds and calls function f1().
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#define TEN_SECONDS  10
int f1(int i) {
    return system("date");
int main(int argc, char**argv) {
    int i;
    for (i = 0; i < 5; i++) {
        sleep(TEN_SECONDS);
        f1(i);
    return 0;
}Thanks,
Nik

Similar Messages

  • Calling a Function in new thread

    Hi,
    I am New to java, i wrote a class it has some functions ,now i want to call one of its function in from another of its methods in new thread, how can i do it.
    Scenario is :
    Classs A extends thread
    function One()
    Thread new = new Thread(functionTwo());
    Function Tow()
    but it i snot allowing me to call that function

    Naseerqau wrote:
    I am New to java, i wrote a class it has some functions methods,
    now i want to call one of its function methods in from another of its methods in new thread, how can i do it.This demonstrates how you run something in a thread.
    I am guessing any Java tutorial on threads will have something like it.
    class Naseergau {
        Naseergau() {}
        void method1() throws Exception {
            for(int i=1;i<10;++i) {
                System.out.println("In method1()");
                Thread.sleep(20L);
        void method2() throws Exception {
            for(int i=1;i<10;++i) {
                System.out.println("In method2()");
                Thread.sleep(20L);
        public void runSerial() {
            System.out.println("Start runSerial");
            try {
                method1();
                method2();
            } catch (Exception ex) {
                ex.printStackTrace();
            System.out.println("End runSerial");
        public void runParallel() {
            System.out.println("Start runParallel");
            Thread t1 = new Thread(new Runnable() {
                public void run() {
                    try {
                        method1();
                    } catch (Exception ex) {
                        ex.printStackTrace();
            t1.start();
            Thread t2 = new Thread(new Runnable() {
                public void run() {
                    try {
                        method2();
                    } catch (Exception ex) {
                        ex.printStackTrace();
            t2.start();
            try {
                t1.join();
                t2.join();
            } catch (Exception ex) {
                ex.printStackTrace();
            System.out.println("End runParallel");
        public static void main(String[] arg) {
            Naseergau n = new Naseergau();
            n.runSerial();
            n.runParallel();
    }

  • Call Java function from multithreaded VC++ application

    Friends, I want to call Java function from two threads of a single VC++ application. I can call it from single thread but when I call it from another thread also, JNI_CreateJavaVM() replies with an error.
    Please......help me

    Your posting is ambiguous. My impression is that you have two threads, both trying to create a java VM?

  • Window doesn't close wheh Call Library Function Node set to Run in Any Thread

    This is a problem regarding Call Library Function Nodes running in the UI thread or any thread.
    I have a camera which has its own API supplied as a dll. I have created a set of VI wrappers which each call a function in the dll through a Call Library Function Node.
    Initially each CLFN was set to 'Run in the UI thread' (the default).
    To start the camera streaming images I call (through a CLFN)
    ICubeSDK_Start(int CamIndex, Hwnd, ImgHandle, bool Preview, bool callback);
    If Preview = True then the image is displayed in a preview window.
    If ImgHandle = NULL a default preview window
    is used.
    In the CLFN definition I define:
    ImgHandle as a U32
    Preview as a I32
    To stop the camera streaming images I call
        ICubeSDK_Stop(int CamIndex)
    In the actual implementation I set ImgHandle = 0 (NULL) and Preview = 1 (true).
    This all works fine, and a preview window is opened and images displayed. When I call ICubeSDK_Stop the preview window is closed.
    However, I would prefer to set the CLFN to 'Run in any thread' because
    a) when run in the UI thread the preview window randomly gets sent to the back when I switch focus between open VI windows (presumably because it is in the same thread as the VIs)
    b) I don't want to put unnecessary stuff in the UI thread
    c) my (naive?) understanding is that it is safer to run in any thread
    So I have set all CLFNs to 'Run in any thread'
    When I do this the preview window opens OK, and behaves like any other non LabVIEW controlled window in terms of focus. But when I call ICubeSDK_Stop() the preview window does not get closed properly, it just shows a blank image. I can't close it manually, there is no X in the corner and no option to close it from the taskbar. To get rid of it I have to close the LabVIEW project it is spawned from, which often results in a crash. It does appear as a separate item in task manager but if I 'end process' it, LabVIEW closes (and often crashes) as well.
    If I change only the CLFNs that call the Start and Stop functions back to 'Run in the UI thread' then it all works fine again, except that the preview window gets sent to the back randomly as before.
    So, what do I have to do to get the preview window to close properly if I set the CLFN to 'Run in any thread'.
    Alternatively, is there a way to close the window programmatically (ie force it to close) after I have called ICube_Stop.
    Thanks
    DAve

    Hi Dave,
    The "Run In UI Thread"  switches from the thread the VIs currently executing in to the user interface thread. If you select "Run in Any Thread", the Call Library Function Node continues in the currently executing thread. By default, all Call Library Function Nodes run in the User Interface thread.
    Before you configure the Call Library Function Node to run in any thread, you have to make sure that the code is thread safe. Code is thread safe when it does not store any global data (e.g. global variables, files on disks, etc.), does not access any hardware, does not make calls to any functions, libraries or drivers that are not thread safe.
    Unfortunately, since you said that your DLL accesses hardware, it is not recommended to use "Run in Any Thread." This is probably why you are seeing the crash.
    If your preview window gets sent to the back you can programmatically bring it forward. Here is an example of how this can be done: http://decibel.ni.com/content/docs/DOC-4551
    If you want to completely close the window down you can do so as described in this link: http://digital.ni.com/public.nsf/allkb/81E9C144190​0FFCE8625748F0055DBB0?OpenDocument
    I also thought you might find this useful: http://zone.ni.com/devzone/cda/tut/p/id/3009
    I hope this helps.
    Regards,
    Mahdieh G
    Applications Engineer
    National Instruments UK&Ireland

  • Running Call Library Function Node in UI Thread

    Hi there!
    The Call Library Function Node has a undocumented upper left input wire, left of the output wire, corresponding to the return value, if any.
    It looks like I can use this wire to influence the order in which different Call Library Function nodes execute. Is this a documented feature I can rely on or am I walking on thin ice here ?
    Furthermore I call the same non-thread-safe function twice in my VI, the Call Library Function Node of each being set to "Run in the UI Thread". If I don't enforce the functions to be called in sequence and I change the value of an unrelated VI control while the VI is running (in a While loop), the function generates an error as if it was called by LabVIEW assuming the function w
    as thread safe. This behavior is very repeatible.
    If I enforce both instances of the same function to be called in sequence (by wiring the output value of the 1st function to the undocumented upper left input wire of the 2nd function), all problems are gone.
    Normally I'd expect that changing a totally unrelated VI control (double) which also runs in the UI thread may have no influence at all, but running the VI indicates otherwise. I tried to reproduce the problem based on a simple example, but I'm unable to obtain the same effect.
    Is there anyone out there who can comment on the behavior I described ?
    Thanks.

    Jeremy,
    thanks for the confirmation with respect to the greyed out terminal. I
    had to find out the meaning of "being right on the money about
    something", so thanks for extending my knowledge of the English
    language too ... 8-)
    Please find the LabVIEW code in attachment. It uses a HP836xx LabVIEW
    instrument driver (controlling an RF source) and also calls a C API to
    have work done in Mathematica (www.wolfram.com) using MathLink. We
    know that the functions which communicate with Mathematica are not
    thread safe, so all function calls are set to "Run in UI Thread".
    If you look at the block diagram, you find the return value of
    LSNAgetEquiTimeStamps() connected to both the greyed out input
    terminals of both LSNAgetTimeData().
    The VI runs fine, setting the source and collecting data, until I
    change the "Power(dBm)" control value. After a few changes, the C API
    indicates that the packages which are exchanged with Mathematica are
    "out of sequence". The same happens immediately if I indicate that the
    functions are thread-safe, by specifying them to be re-entrant. So I
    tend to conclude that one way or another the 2nd LSNAgetTimeData() is
    executed before the 1st one has finished.
    If I eliminate the wire connecting the return value of
    LSNAsetEquiTimeStamps() to the lower LSNAgetTimeDat () input terminal
    and connect the return value of the upper LSNAgetTimeData() to the
    greyed out input terminal of the lower LSNAgetTimeData(), everything
    works fine. I can change the value of the "Power(dBm)" control "a
    volonte". This is consistent with my assumption above: by changing the
    wires I forced the 2nd LSNAgetTimeData() to wait for all inputs to be
    available. Because one input is provided by the 1st LSNAgetTimeData(),
    I'm sure this one has completed before the 2nd one is invoked.
    I cannot explain what is happening. According to the manual, all code
    linked to each function node should complete before code linked to
    another function node is executed. However, I think I've read
    somewhere on the NI website that the UI consists of two threads and
    perhaps something goes wrong (internally in LabVIEW ?) when the UI
    thread is informed about the fact that the "Power (dBm)" control has
    changed.
    I don't claim LabVIEW is to blame ... FYI ... the version I'm using is
    (the evaluation version) of LabVIEW 7 Express.
    Thanks.
    Frans.
    Attachments:
    836xx_LSNA_example_v2.vi ‏99 KB

  • How to call adobe functions in my own thread?

    I am developing a plugin for adobe reader, I created one thread, failed  when i call AVAlertNote() in my thread. So how can i call adobe functions in my own thread(not in the main thread)?

    Well, there would have been a better chance of a reply in the Acrobat SDK forum. This isn't largely visited by developers. However, the answer is simple: while a plug-in can use threads it MUST only use Acrobat API calls from the main thread. It's well worth checking the Acrobat Developer FAQ before posting.

  • Help calling JNI function from a java thread

    I am using the following code to call a JNI fuction from a java thread:
    public class CMSMessageHandler extends MessageHandler{
    static{
    System.loadLibrary("jastb");
    public native int cmsReadIt(ByteBuffer buff);
    private ByteBuffer dirbuf = null;
    /** Creates a new instance of CMSMessageHandler */
    public CMSMessageHandler() {
    // allocate to max size datagram
    dirbuf = ByteBuffer.allocateDirect(65536);
    public void readMessages(){
    /*Thread worker = new Thread(){
    public void run(){*/
    int count;
    while (true){
    try{
    count = cmsReadIt(dirbuf);
    } catch (Exception e){
    e.printStackTrace();
    worker.start();*/
    public static void main(String[] args) {
    CMSMessageHandler handler = new CMSMessageHandler();
    handler.readMessages();
    When I run this main method with the thread commented out, it works great. When I run the main method with the thread, it works great for a while, and then funny things start happening with the native library I am using. My native library uses shared memory, signals, and semaphores. It feels a bit like my java program is stomping on the resources that my native library is using, when a run the java program with a thread.
    Is there something I don't know about calling native code from a thread? Should I be doing something explicitly to protect my native library's shared memory, signals, or semaphores?
    Thanks,
    Lisa.

    Does the library do any initialization when loaded? Does it make a dangerous assumption that the thead calling cmdReadIt will always be the same thread that initially loaded it? Try loading the library in the worker thread instead of in the main thread via the static initializer.Yes. There is a call to another native method cmsOpenIt that does CMS initialization. I put cmsOpenIt as well as the System.loadLibrary("jastb") in the worker thread and I'm still experiencing the same problems.
    Incidently, the mere presence of another Thread in this program does not seem to cause problems. It's only when I run calls to cmsReadIt in a thread that I get into trouble.
    For example, this works fine:
    public class CMSMessageHandler extends MessageHandler{
        public native int cmsReadIt(ByteBuffer buff);
        public ByteBuffer dirbuf = null;
        static {
            System.loadLibrary("jastb");
        public CMSMessageHandler() {
            // allocate to max size datagram
            dirbuf = ByteBuffer.allocateDirect(65536);
        public void readMessages(){
            try{
                int count = 0;
                while (true){
                    count = cmsReadIt(dirbuf);
            } catch (Exception e){
        public static void main(String[] args) {
            CMSMessageHandler handler = new CMSMessageHandler();
            Thread worker = new Thread(){
                public void run(){
                    while (true){
                        try{
                            Thread.currentThread().sleep(1000);
                            System.out.println("sleep thread.");
                        } catch (Exception e){
                            e.printStackTrace();
            worker.start();
            handler.readMessages();  
        }Are there JVM flags that I should experiment with that might help mitigate/diagnose this problem?

  • System failure, during call of function module RSWR_RFC_SERVICE_TEST

    Hi Team,
         I am working with BW and Portal Integration, with the Netweaver
    2004s SP 11 version. I have a issue when i run the RSPOR_SETUP program
    to test the configuration.
    The error is on status 5 and 12, i get the following error:
    System failure, during call of function module RSWR_RFC_SERVICE_TEST,
    and when i enter at the dev_jrfc.trc log file, i have the following
    error:
    Exception thrown [Tue Jul 10 16:12:16,687]:Exception thrown by
    application running in JCo Server
    java.lang.RuntimeException: call FM RSWR_RFC_SERVICE_TEST to ProgId
    smxpedvc_PORTAL_EPD on host smxpedvc.grupoempresarialangeles.com.mx
    with SSO not authorized: No login module succeeded.
            at
    com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest
    (RFCDefaultRequestHandler.java:79)
            at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest
    (RFCJCOServer.java:156)
            at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7785)
            at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest
    (MiddlewareJRfc.java:2405)
            at com.sap.mw.jco.MiddlewareJRfc$Server.listen
    (MiddlewareJRfc.java:1728)
            at com.sap.mw.jco.JCO$Server.listen(JCO.java:8145)
            at com.sap.mw.jco.JCO$Server.work(JCO.java:8265)
            at com.sap.mw.jco.JCO$Server.loop(JCO.java:8212)
            at com.sap.mw.jco.JCO$Server.run(JCO.java:8128)
            at com.sap.engine.core.thread.impl3.ActionObject.run
    (ActionObject.java:37)
            at java.security.AccessController.doPrivileged(Native Method)
            at com.sap.engine.core.thread.impl3.SingleThread.execute
    (SingleThread.java:100)
            at com.sap.engine.core.thread.impl3.SingleThread.run
    (SingleThread.java:170)
    Could you help me to solve this issue.
    Thanks so much.

    Have you checked the user that is used to connect from J2EE back to ABAP?
    I had a similar problem, went into the Visual Administrator and found the incorrect password (or possibly outdated password) was being used to communicate back to ABAP, and updating that sorted out my problem.
    Hope this helps.
    Cheers,
    Andrew

  • ERROR:When calling  a Function

    Hi all,
    i am trying to call a function from AM.and when i run the page i got this error. anbody please help me guys.
    its very urgent.
    oracle.apps.fnd.framework.OAException: Application: FND, Message Name: SQL_PLSQL_ERROR. Tokens: ROUTINE = AppsConnectionManager.appsInitialize(int,int,int,int,Connection):-1,-1,-1,0,oracle.jdbc.driver.OracleConnection@f7a4ba; REASON = java.sql.SQLException: No more data to read from socket; ERRNO = 17410; (Could not lookup message because there is no database connection)
         at oracle.apps.fnd.framework.server.OAExceptionUtils.processAOLJErrorStack(OAExceptionUtils.java:988)
         at oracle.apps.fnd.framework.OACommonUtils.processAOLJErrorStack(OACommonUtils.java:866)
         at oracle.apps.fnd.framework.CreateIcxSession.getEncryptedSessId(CreateIcxSession.java:219)
         at oracle.apps.fnd.framework.CreateIcxSession.createSession(CreateIcxSession.java:80)
         at runregion.jspService(runregion.jsp:96)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    ## Detail 0 ##
    oracle.apps.fnd.framework.OAException: Application: FND, Message Name: FND_GENERIC_MESSAGE. Tokens: MESSAGE = java.sql.SQLException: No more data to read from socket; (Could not lookup message because there is no database connection)
         at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:888)
         at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:862)
         at oracle.apps.fnd.framework.server.OAExceptionUtils.processAOLJErrorStack(OAExceptionUtils.java:980)
         at oracle.apps.fnd.framework.OACommonUtils.processAOLJErrorStack(OACommonUtils.java:866)
         at oracle.apps.fnd.framework.CreateIcxSession.getEncryptedSessId(CreateIcxSession.java:219)
         at oracle.apps.fnd.framework.CreateIcxSession.createSession(CreateIcxSession.java:80)
         at runregion.jspService(runregion.jsp:96)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    ## Detail 0 ##
    java.sql.SQLException: No more data to read from socket
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
         at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1160)
         at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:963)
         at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:893)
         at oracle.jdbc.ttc7.Oopen.receive(Oopen.java:105)
         at oracle.jdbc.ttc7.TTC7Protocol.open(TTC7Protocol.java:611)
         at oracle.jdbc.driver.OracleStatement.open(OracleStatement.java:576)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2809)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:622)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:698)
         at oracle.apps.fnd.security.AppsConnectionManager.appsInitialize(AppsConnectionManager.java:472)
         at oracle.apps.fnd.security.AppsConnectionManager.borrowConnection(AppsConnectionManager.java:319)
         at oracle.apps.fnd.common.Context.borrowConnection(Context.java:1773)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnectionFinal(AppsContext.java:2460)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnection(AppsContext.java:2398)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2257)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2072)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1976)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1993)
         at oracle.apps.fnd.common.Context.getJDBCConnection(Context.java:1541)
         at oracle.apps.fnd.framework.CreateIcxSession.getConnection(CreateIcxSession.java:559)
         at oracle.apps.fnd.framework.CreateIcxSession.getIntValue(CreateIcxSession.java:346)
         at oracle.apps.fnd.framework.CreateIcxSession.getUserID(CreateIcxSession.java:323)
         at oracle.apps.fnd.framework.CreateIcxSession.getEncryptedSessId(CreateIcxSession.java:148)
         at oracle.apps.fnd.framework.CreateIcxSession.createSession(CreateIcxSession.java:80)
         at runregion.jspService(runregion.jsp:96)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    oracle.apps.fnd.framework.OAException: Application: FND, Message Name: FND_GENERIC_MESSAGE. Tokens: MESSAGE = java.sql.SQLException: No more data to read from socket; (Could not lookup message because there is no database connection)
         at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:888)
         at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:862)
         at oracle.apps.fnd.framework.server.OAExceptionUtils.processAOLJErrorStack(OAExceptionUtils.java:980)
         at oracle.apps.fnd.framework.OACommonUtils.processAOLJErrorStack(OACommonUtils.java:866)
         at oracle.apps.fnd.framework.CreateIcxSession.getEncryptedSessId(CreateIcxSession.java:219)
         at oracle.apps.fnd.framework.CreateIcxSession.createSession(CreateIcxSession.java:80)
         at runregion.jspService(runregion.jsp:96)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    ## Detail 0 ##
    java.sql.SQLException: No more data to read from socket
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
         at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1160)
         at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:963)
         at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:893)
         at oracle.jdbc.ttc7.Oopen.receive(Oopen.java:105)
         at oracle.jdbc.ttc7.TTC7Protocol.open(TTC7Protocol.java:611)
         at oracle.jdbc.driver.OracleStatement.open(OracleStatement.java:576)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2809)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:622)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:698)
         at oracle.apps.fnd.security.AppsConnectionManager.appsInitialize(AppsConnectionManager.java:472)
         at oracle.apps.fnd.security.AppsConnectionManager.borrowConnection(AppsConnectionManager.java:319)
         at oracle.apps.fnd.common.Context.borrowConnection(Context.java:1773)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnectionFinal(AppsContext.java:2460)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnection(AppsContext.java:2398)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2257)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2072)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1976)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1993)
         at oracle.apps.fnd.common.Context.getJDBCConnection(Context.java:1541)
         at oracle.apps.fnd.framework.CreateIcxSession.getConnection(CreateIcxSession.java:559)
         at oracle.apps.fnd.framework.CreateIcxSession.getIntValue(CreateIcxSession.java:346)
         at oracle.apps.fnd.framework.CreateIcxSession.getUserID(CreateIcxSession.java:323)
         at oracle.apps.fnd.framework.CreateIcxSession.getEncryptedSessId(CreateIcxSession.java:148)
         at oracle.apps.fnd.framework.CreateIcxSession.createSession(CreateIcxSession.java:80)
         at runregion.jspService(runregion.jsp:96)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)

    its very urgent.Oh no! Sorry I couldn't respond sooner - I do hope the patient who was undergoing his critical surgery that obviously was held up because you couldn't call your function has survived!
    Looks like the connection was dropped/terminated. What does your function do? You haven't really given any information whatsoever that would enable someone to help you (such as version, perhaps a code snippet, etc)
    John

  • Bad performance when calling a function in where clause

    Hi All,
    I have a performance problem when executing a query that contains a function call in my where clause.
    I have a query with some joins and a where clause with some regular filters. But one of these filters is a function, and its input parameters are columns of the tables used in the query.
    When I run it with only a few rows in the tables, it goes ok. But as the number of rows grows, performance falls geometrically, even when my where clause filters the result to only a few rows.
    If I take the function call off of the where clause, then run the query and then call the function for each returned row, performance is ok. Even when the number of returned rows is big.
    But I need the function call to be in the where clause, because I can't build a procedure to execute it.
    Does anyone have any clue on how to improve performance?
    Thanks,
    Rafael

    You have given very little information...
    >
    If I take the function call off of the where clause, then run the query and then call the function for each returned row, performance is ok. Even when the number of returned rows is big. Can you describe how you measured the performance for a big result set without the function? For example lets say there had been 10.000 rows returned (which is not really big, but it is astarting point). Did you see all 10.000 rows? A typical mistake is to execute the query in some tool like Oracle SQL Developer or TOAD and measure how fast the first couple of rows are returned. Not the performance of the full select.
    As you can see from this little detail there are many questions that you need to address first before we can drill down to the root of your problem. Best way is to go through the thread that Centinul linked and provide all that information first. During the cause of that you might discover that you learn things on the way that help a lot for later tuning problems/approaches.
    Edited by: Sven W. on Aug 17, 2009 5:16 PM

  • Calling a function in a swf with TLFTextField from an external program fails

    I have a program A that loads another swf B, and after B is loaded, A will call a function of B.  It used to work when B creates a TextField and uses TextFormat, but when I changed to creating a TLFTextField, I got this error:
    Reference Error: Error #1069:  Property loadCurrentPictureFromMenu not found on ECard__Preloader__ and there is no default value.
    at ECard/swfLoadCompleteEventHandler()....
    And also
    Warning: Ignoring 'secure' attribute in policy file from http://fpdownload.adobe.com/pub/swz/crossdomain.xml.  The secure attribute is only permitted in HTTPS and socket policy files......
    So I wrote these 2 programs to test this:
    ----------------------- Test B -------------------------
    import fl.text.TLFTextField;
    import flashx.textLayout.formats.TextLayoutFormat;
    import flashx.textLayout.elements.TextFlow;
    var myFormat:TextLayoutFormat = new TextLayoutFormat();
    myFormat.fontFamily = "Kids";
    myFormat.fontSize = 24;
    var tlfTextField:TLFTextField = new TLFTextField();
    tlfTextField.x = 50;
    tlfTextField.y = 50;
    addChild(tlfTextField);
    var myTextFlow:TextFlow = tlfTextField.textFlow;
    myTextFlow.hostFormat = myFormat;
    myTextFlow.flowComposer.updateAllControllers();
    tlfTextField.text = "Testing this";
    function changeText(string:String):void
         tlfTextField.text = string;
    ---------------------- Test A -----------------------------------
    import flash.net.URLRequest;
    import flash.display.Loader;
    import flash.display.MovieClip;
    var urlRequest:URLRequest = new URLRequest("testTLFTextField.swf");
    var loader:Loader = new Loader();
    loader.load(urlRequest);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadingCompleteEventHandler);
    function loadingCompleteEventHandler(evt:Event):void
         addChild(loader);
         loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, loadingCompleteEventHandler);
         var mc:MovieClip = evt.currentTarget.content;
         mc.changeText("We are here");
    I got Error #1069 again, but when I changed TLFTextField back to TextField, it works again.  Test A can now find the function "changeText()" in Test B.
    I am using CS5.5.
    Any help is appreciated!
    Thanks in advance!

    I had this written in the program and commented it out when I was trying to debug an earlier problem.  I uncommented the Embed statement, but it is still not working on Android.  Running on PC is fine.  I will try out a few more things, if it still does not work, I will open a new thread.
    Thanks all for your help!

  • System failure during call of function module RSWR_RFC_SERVICE_TEST in BW

    Hello All,
                I am doing configuration with BW and EP portal when we run the program (RSPOR_SETUP) in step - 12 Maintain User Assignment in Portal = (System failure during call of function module RSWR_RFC_SERVICE_TEST) giving this error SSO is working fine.
    RFC connection is working fine with BW and portal
    When i execute the FM - RSWR_RFC_SERVICE_TEST it is giving error (SYSTEM_FAILURE) and in Portal side log file it is giving below error.
    dev_jrfc.trc
    Exception thrown [Fri Sep 05 15:14:57,928]:Exception thrown by application running in JCo Server
    java.lang.RuntimeException: Bean RSWR_RFC_SERVICE_TEST not found on host (Hostname), ProgId=EPP_PORTAL_SID: Object not found in lookup of RSWR_RFC_SERVICE_TEST.
            at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:138)
            at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run(RFCJCOServer.java:269)
            at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
            at java.security.AccessController.doPrivileged(Native Method)
            at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
            at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    Please help me find the solution.
    Thanks
    Gurpal

    Hi Gurpal,
    Please go through the below SAP notes
    878455
    - Information broadcasting: No portal user exists
    814083
    - Inf. broadcasting: Changed RFC settings as of NW 04 SP11
    1135947 - Bean not found
    Hope this solves your problem.
    Regards,
    Prithviraj.

  • Strange problem of calling library function node in labview 2010 and 2011

    one year ago,I develop a program to usb device data and it works well,in labview 8.6 or 2009(win xp).Recently, When I test
    the program in labview 2010 and labview 2011(win xp).,the program always crash immediately.I check the program and find main
    problem is in call library function node. In my program,I use labview 2009 library for the USBExpress driver for
    Silicon Labs USB MCU's from:https://decibel.ni.com/content/docs/DOC-9522,for example, 2 functions SI_OPEN and SI_READ
    can not work well.
    the header definition of SI_OPEN and SI_READ is:
    SI_STATUS WINAPI SI_Open(
    DWORD dwDevice,
    HANDLE* cyHandle
    SI_STATUS WINAPI SI_Read(
    HANDLE cyHandle,
    LPVOID lpBuffer,
    DWORD dwBytesToRead,
    LPDWORD lpdwBytesReturned,
    OVERLAPPED* o = NULL
    the SI_STATUS is equivalent to int type.
    orignally, for HANDLE * in SI_Open, the parameter type in call library function node is numeric, data format is unsigned 32 bit integer ,and pass pointer to value.
    for HANDLE in SI_Read, the parameter type in call library function node is numeric, data format is unsigned 32 bit integer ,and pass value.The program works well in labview 8.6&2009,however,crash in labview 2010 &2011.
    later,I debug the program, for HANDLE *, I choose parameter type in call library function node as adapt to type, data format is point to Handles.for HANDLE, I choose parameter type in call library function node as adapt to type, data format is Handles by Value.Crash not happend in labview 2010&2011,however,it cannot read any data from from USB device correctly as before.I can not find the reason.
    Dear friends,I need your help to answer the problem. Thank you.

    Based on the help page it looks like it should execute asynchronously.
    The thing in the description that leads me to believe they execute asynchronously is that you can configure the library to run as a multi-threaded operation.
    Please take a look here to see the difference between synchronous and asynchronous execution.
    Since the code even has the ability to be multi-threaded, you can consider it as running in parallel to your other code.
    Any data returned is passed to the thread that called that function.
    Cory K

  • Calling of function in initialization block

    Hi,
    Could anyone please tell whether calling of function in initialization block occurs in what manner?
    Please answer by selecting from below options:
    Option 1. SEQUENTIAL (e.g USER 1 & USER 2 concurrently logged in, Now USER 1 calls the function through initialization block first and after completion releases it for USER 2)
    Option 2 THREADING (e.g USER 1 & USER 2 concurrently logged in, Now USER 1 and USER 2 calls the function through initialization block simultaneously)
    Regards,
    Varun
    Edited by: Varun Malhotra on 17-Dec-2009 01:07
    Edited by: Varun Malhotra on 17-Dec-2009 01:57

    Hi Varun,
    Based upon my previous Dashboard Prompt Execution Order, most things in OBIEE happen asynchronously.
    That being said, I would think that your second scenario is the most likely. If both users login at the same time, the function gets called simultaneously (or close to it).
    Hope that helps.
    -Joe

  • How to call oracle function from ejb3

    i'm trying to call an oracle query-function from ejb3.
    The oracle function:
    create or replace FUNCTION getSecThreadCount(secId in NUMBER,avai in NUMBER)
    RETURN SYS_REFCURSOR is cur SYS_REFCURSOR;
    m_sql VARCHAR2(250);
    BEGIN
    m_sql:='select count(thrId) from thread where secId='|| secid||'
    and thrAvai='|| avai;
    open cur for m_sql;
    return cur;
    END;
    I'v tried several ways to call it,but all failed:
    1. the calling code:
    public Object getSectionThreadCount(int secId,int avai){
              Query query=manager.createNativeQuery("{call getSecThreadCount(?,?) }");     
              query.setParameter(1, secId);
              query.setParameter(2, avai);
              return query.getSingleResult();
    but i got the exception:
    Exception in thread "main" javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query; nested exception is: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
    javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
    Caused by: java.sql.SQLException: ORA-06550: row 1, col 7:
    PLS-00221: 'GETSECTHREADCOUNT' not procedure or not defined
    ORA-06550: row 1, col 7:
    PL/SQL: Statement ignored
    2. the calling code:
    @SqlResultSetMapping(name = "getSecThreadCount_Mapping")
    @NamedNativeQuery(name = "getSecThreadCount",
    query = "{?=call getSecThreadCount(:secId,:avai)}",
    resultSetMapping = "getSecThreadCount_Mapping",
    hints = {@QueryHint(name = "org.hibernate.callable", value = "true"),
              @QueryHint(name = "org.hibernate.readOnly", value = "true")})
    public Object getSectionThreadCount(int secId,int avai){
              Query query=manager.createNamedQuery("getSecThreadCount");     
              query.setParameter("secId", secId);
              query.setParameter("avai", avai);
              return query.getSingleResult();
    but i run into the exception:
    Exception in thread "main" javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query; nested exception is: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
    javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
    Caused by: java.sql.SQLException: lost in index IN or OUT parameter:: 3
    By the way, i have successfully called the function from hibernate. And i use oracle 11g, JBoss5 RC1.
    Could anyone tell me how to call the function from EJB3?
    Thanks.

    Here's a working model:
    package.procedure: (created in example schema scott)
    CREATE OR REPLACE package  body data_pkg as
      type c_refcursor is ref cursor;
      -- function that return all emps of a certain dept
      function getEmployees ( p_deptId in number
      return c_refcursor
      is
        l_refcursor c_refcursor;
      begin
         open l_refcursor
        for
              select e.empno as emp_id
              ,        e.ename as emp_name
              ,        e.job   as emp_job
              ,        e.hiredate as emp_hiredate
              from   emp e
              where  e.DEPTNO = p_deptId;
        return l_refcursor;
      end getEmployees;
    end data_pkg;
    /entity class:
    package net.app.entity;
    import java.io.Serializable;
    import java.util.Date;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.NamedNativeQuery;
    import javax.persistence.QueryHint;
    import javax.persistence.SequenceGenerator;
    import javax.persistence.Table;
    @SuppressWarnings("serial")
    @Entity
    @Table (name="emp")
    @SequenceGenerator(name = "EmployeeSequence", sequenceName = "emp_seq")
    @NamedNativeQuery( name = "getEmpsByDeptId"
                   , query = "{ ? = call data_pkg.getEmployees(?)}"
                   , resultClass = Employee.class
                   , hints = { @QueryHint(name = "org.hibernate.callable", value = "true")
                          , @QueryHint(name = "org.hibernate.readOnly", value = "true")
    public class Employee implements Serializable
        @Id
        @Column(name="emp_id")
        @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "EmployeeSequence")
        private int id;
        @Column(name="emp_name")
        private String name;
        @Column(name="emp_job")
        private String job;
        @Column(name="emp_hiredate")
        private Date hiredate;
        // constructor
        public Employee (){}
        // getters and setters
        public int getId()
         return id;
    etc...session bean:
    package net.app.entity;
    import java.util.ArrayList;
    import java.util.List;
    import javax.ejb.Stateless;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
    import javax.persistence.Query;
    import net.app.entity.Employee;
    import net.app.iface.ScottAdmin;
    @Stateless
    public class ScottAdminImpl implements ScottAdmin
        @PersistenceContext
        private EntityManager entityManager;
        @SuppressWarnings("unchecked")
        public List<Employee> getEmployeesByDeptId(int deptId)
         ArrayList<Employee> empList;
         try
             Query query = entityManager.createNamedQuery("getEmpsByDeptId");
             query.setParameter(1, deptId);
             empList = (ArrayList<Employee>) query.getResultList();
             return empList;
         catch (Exception e)
             e.printStackTrace(System.out);
             return null;
    }client:
    package net.app.client;
    import java.util.List;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import net.app.entity.Employee;
    import net.app.iface.ScottAdmin;
    public class ScottClient
        public static void main(String[] args)
         try
             // create local interface
             InitialContext ctx = new InitialContext();
             ScottAdmin adminInterface = (ScottAdmin) ctx.lookup("ScottAdminImpl/remote");
             // select employees by deptno
             int deptno = 20;
             List<Employee> empList = adminInterface.getEmployeesByDeptId(deptno);
             // output
             System.out.println("Listing employees:");
             for (Employee emp : empList)
              System.out.println(emp.getId() + ": " + emp.getName() + ", " + emp.getJob() + ", " + emp.getHiredate());
         catch (NamingException e)
             e.printStackTrace(System.out);
    }Basically you just ignore the refcursor outbound parameter.
    This is a stored function, have yet to try outbound refcursor parameters in stored procedures...
    Edited by: _Locutus on Apr 2, 2009 2:37 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Maybe you are looking for

  • Do I need to buy PDA deployment licenses if I'm writing an application to a non PDA device?

    Hi I'm starting on a project that will be using a board running windows CE, I understand that I have to buy the PDA module so that I can write the application and then download it to the target using active Sync but I'm confused about the license iss

  • One ViewObject Instance on multiple task flow

    Hi all, I am using Jdev 11.1.2.2. I have a Application Module and a view object defined in it. I am trying to use the same view object in multiple taskflow. One of the taskflow has a method exposed(default activity) in the application module that per

  • Nano lock icon on, nothing works

    Hello, I have a 8G 4th gen nano. It plugs into the computer and iTunes reads it, but the 'connected screen' is the only one that stays on after the language screen goes away. I can play songs using itunes controls. The battery icon says fully charged

  • I can't watch videos in my Ipod

    I just bought an Ipod video and after have transfered few videos to this new one I realized that the only thing I can do is listen to the videos and not watch them. Am I missing an setup or there's something wrong with it? I hope there's someone here

  • FF hangs when printing a PDF page

    CRTL P brings up print options- printer Can0n iP1800. When OK is selected Progress Box shows "Printing MisCommands.PDF" and hangs at 0%complete. Must select "X" out FF which brings up the Program Not Responding box https://docs.google.com/a/scc-ems.u