Q: Out of Stack Space upon Run

Q: Out of Stack Space upon Run

Post by Peter Gabo » Tue, 23 Jan 1996 04:00:00



    I have the following situation which is proving to be quite an annoyance.  I would appreciate comments:
    I have several workbooks (from 300 to 1000K) making up a porgram.  The main one loads, the others only upon
demand since it takes from 1 to 2 minutes to load per module.  The number of calls between modules is not great,
nor are any called often.  To avoid confusion and to allow this loading on demand, all external calls are placed
through the main module via the Run statement.  Specifically, a call from Module A to Module B involves two Run
statements, the first from A to the Main Module, the second from the Main Module to module B.
    After implementing the above with the Run command, I find that it works quite satisfactorally on the Mac.  When
I move it to Win 3.1, however, I wind up with an out of stack space.  Now, the conjecture is that in Win 3.1 the
arguments (strings and numbers) are getting pushed onto the stack by value, and the stack size is not large enough.  
In addition, however, examining the procedure calls leading to this reveals that where there is a cross module call
in Win 3.1, "non Basic code" is shown as a called routine.  The Mac does not have this.

    Does anyone have comments or workarounds?  A simple solution such as creating a type for the arguments and then
passing only that type is, of course, ineffectual, since the entire type is pushed onto the stack.  Moving to
another Windows platform is not an option.

                                                 Thanks,
                                                       Peter

 
 
 

Q: Out of Stack Space upon Run

Post by RBAffle » Fri, 26 Jan 1996 04:00:00


The best thing to do is switch to Excel 7/Window 95....

If you cannot upgrade at this time, you might see if you can get the DLL
xlrun.dll from MS.  This dll can replace Application.Run calls in Excel 5
and does not have the stack space hit.  Sorry, but I do not have an exact
location where you can find this dll on the web.

Another option is to use Application.OnTime and "daisy chain" your
routines.  It can only be used linearly, but can be a decent workaround in
some circumstances.

Sub AAA
  Application.Ontime Now, "BBB"
End Sub

Sub BBB
  ...
End Sub

 
 
 

1. tDcacheUpd runs out of stack space

Hi,

we integrated Disc on chip driver (Version 5.0 from August 01, 2001)
into our BSP. We do run DOSFS 2.

We face the problem that under heavy load situations
(twenty times a second strings of 200
character length are written to a file on the DOC device)
the tDcacheUpd task run's out of stack memory which causes
the calling task to be suspended .

I expect it to be a vxworks problem (rather than a device problem),
because tDcacheUpd must not exceed the stack in any situation,
rather than blocking the calling task(s).

Any idea what causes tDcacheUpd to run out of stack space ?
Is it possible to force this by creating/deleting a lot of
files in a short period of time ?

Thanks in advance.

rgds

R.Stelzer

Tornado vxworks
=====================================================
            Gebrder Stoye GmbH
department: traffic control systems
      name: Rainer Stelzer
       adr: Longericher Strasse 177
      city: Cologne, Germany
       zip: 50739
     mobil: 0173/7266090
     phone: ++49/221/1707019
       fax: ++49/221/1707010

       www: http://www.stoye.de
=====================================================

2. Monitor Type

3. Running bipolars with 5804B Allegro and other Qs

4. Checked Menu Items

5. What is a VxWorks Stack, Epilogue stack, stack in general

6. atari portfolio memory

7. How Do I run macro upon selecting worksheets

8. Wakefield Show 1999

9. UNIX file system free space, used space, total space

10. excel 97-out of stack space msg

11. Excel 5 Out of Stack Space Error 28

12. Error 28 Out of stack space, how to solve?

13. Stack Space Error in VBA?