In a Twill application lets say I have two types of runnables. One runnable has a 3GB container size and a different runnable has a 6GB container size. Now I want to set different -Xms option for these two runnable types. How do I supply different JVM options to different runnable types?
All I can find is this setJVMOptions function but it supplies the JVM options to all the runnables.
This not possible in versions 0.11.0 and earlier. This is fixed in trunk and will be in version 0.12.0. See ticket TWILL-241 for details.
Related
Is there a way to match terminal/console features with entries in terminfo database?
For example, to find a closest match to Windows console or other type of non-traditional terminal.
There are no online services, so I expect that the problem is non-trivial and it is interesting to know why.
UPDATE: Terminfo database gives a set of features for a known terminal type or name. I am trying to do the reverse task - match features of unknown terminal against existing terminfo entries.
UPDATE2: How it should work...
I select my terminal capabilities from a long list
Matcher finds profiles that are either
2.1. implement all those capabilities exactly with no other capabilities
2.2. implement almost all capabilities exactly with no other capabilities
2.3. implement capabilities exactly with some other capabilities
2.4. implement almost all capabilities and adds some other capabilities
Thanks for your question. Try this, with ncurses package installed:
infocmp | grep _Cap_name_
or
infocmp _terminfo_name_ | grep _Cap_name_
and
infocmp [-d|-c|-n] _wanted_ _have_
infocmp compares the contents of two terminfo terminals, or displays the terminfo entry (binary) as termcap (human readable text)
On my system terminfo(s) are here:
/usr/share/terminfo
/lib/terminfo
I reference _Cap_name_ here at opengroup.org
Because you are on Windows (probably without Cygwin) you may have to manually check the capabilities of the TERMs you expect, and build in workarounds based on that pre-knowledge, but its Windows, so there can't be that many.
TERMINFO=/user/share/terminfo toe
This gets you a list of terminals. If you have control over the server, add a terminfo file yourself, write it as text in either termcap format then convert it or in terminfo info format and then compile it. That way you can start with dummy+linewrap. Or try ansi+idl.
NOTE: I agree with the other comment about using a VT100/VT102 library.
According to your revised OP, again using ncurses library, C you can query the terminal using tget. I am not aware of a way to iterate the capabilities without knowing what they might be before making a call to tget, however I know that it will return 0 for capabilities that return integer values and are not found, eg. cMax = tget("max_colors");.
According to terminfo, when compiling a terminal info configuration, it is possible to provide, (1st) over-rides, (2nd) included terminals, optionally (3rd) excluding included terminals with certain capabilities. This however still requires write access to the target server terminfo database directory, so your resulting terminfo file can be uploaded.
The terminfo database provides both a way for servers to provide a terminal, AND for programs (including remote ones) to interpret a provided terminal.
So far the answer is http://man7.org/linux/man-pages/man5/terminfo.5.html so I will post better results when I get more time.
I have a server which has two JVM's and I have a class which creates dummy threads.This runs on lets say JVM A.How can I create these threads on JVM B programatically.
After some research I came across http://docs.oracle.com/javase/6/docs/jdk/api/attach/spec/index.html. I am not sure if this can suffice my requirement.
You need JVM A to contact JVM B to tell it to start some threads. You will also need to pass any data JVM B need to run and possibly pass back any results. A simple example is using RMI or RPC.
I want to mmap to a file or a block device.
So, I modified HotSpot code, function named commit_memory_impl() to be without MAP_ANONYMOUS.
However, JVM failed with SIGSEGV.
If I append the MAP_ANONYMOUS, it works.
Should I use mmap with MAP_ANON? in JVM?
If you want to mmap a file I would use the built in libraries to do this.
Note: This is limited to less than 2 GB at a time however if you use reflection like Chronicle-Bytes does, you can map 63-bit regions.
This doesn't require you to modify the JVM.
In my current project, we have already developed test scripts with junit framework. We have used all sort of locators methods which includes xpath as well.Now we have to do parallel execution on IE8,IE9 and FF21.We implemented grid2 with junit but we see that majority of the scripts are failing due to time out.
What I would like to know is if we have to execute 100 test cases on 5 nodes:
1.what is minimum hardware configuration required in terms of RAM,and JVM configuration
2.What is ideal hub/node configuration
3.What desired capabilities have to be set?
4.what is the best approach to set wait methods for elements and messages?
Has anyone successfully implemented selenium grid2 and ran more than 100 test cases in parallel?
Here goes my question, Have you ever executed those 100 test cases in sequence with out any such timeout issues? If yes, then you can do it in grid as well.For this, you may need minimum of 4 GB RAM and better clocked CUP. JVM version can be the same in which your scripts are done.
In general, you may need to handle some run time behavior of your application.
When using vxWorks as a development platform, we can't write our application with the standard main() function. Why can't we have a main function?
Before the 6.0 version VxWorks only
supported kernel execution environment for tasks and did not support
processes, which is the traditional application execution environment
on OS like Unix or Windows. Tasks have an entry point which is the
address of the code to execute as a task. This address corresponds to
a C or assembly function. It can be a symbol named "main" but there
are C/C++ language assumptions about the main() function that are not
supported in the kernel environment (in particular the traditional
handling of the argc and argv parameters). Furthermore, prior to
VxWorks 6.0, all tasks execute kernel code. You can picture the kernel
as a common repository of code all linked together and then you'll see
that you cannot have several symbols of the same name ("main") since
this would create name collisions.
Now this is accurate only if you link your application code to the
kernel image. If you were to download your application code then the
module loader will accept to load several modules each with a main()
routine. However the last "main" symbol registered in the system
symbol table is the only one you can access via the target shell. If
you want to start tasks executing the code of one of the first loaded
modules you'd have to use the addresses of the previous main()
function. This is possible but not convenient. It is far more
practical to give different names to the entry points of tasks (may be
like "xxxStart" where "xxx" is a name meaningful for what the task is
supposed to do).
Starting with VxWorks 6.0 the OS supports a process environment. This
means, among many other things, that you can have a traditional main()
routine and that its argc and argv parameters are properly handled,
and that the application code is executing in a context (user context)
which is different from the kernel context, thus ensuring the
isolation between application code (which can be flaky) and kernel
code (which is not supposed to be flaky).
PAD