Java ¶àÏß³Ì ¼òµ¥Àý×Ó
ÒòΪ¹¤×÷ÐèÒª£¬ÐèÒªÔÚͬһʱ¼äÖ´Ðжà´Îij¸ö²Ù×÷£¬¿´¿´ÊÇ·ñ»áÒýÆðÊý¾ÝµÄdeadlockÎļþ¡£
¶àÏ߳̾ßÌåÖ´ÐÐÀà
package com.ericyang.test.cmdline;
import java.util.List;
import java.text.SimpleDateFormat;
import java.text.DateFormat;
import java.util.Date;
class ThreadClass extends xxxTestBase implements Runnable{
private static String[] Import_args;
public ThreadClass(String[] args){
Import_args = args;
}
public void run()
{
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("EEEE-MMMM-dd-yyyy");
DateFormat shortDateFormat =
DateFormat.getDateTimeInstance(
DateFormat.SHORT,
DateFormat.SHORT);
Date date = new Date();
System.out.println(bartDateFormat.format(date));
System.out.println("Thread starting time:"+shortDateFormat.format(date));
try {
runCmd(Import_args);
}catch (Exception ex) {
System.out.println(ex.getMessage());
}
System.out.println("Thread ending time:"+shortDateFormat.format(date));
}
}
/*xxxTestBase ÊÇÎÒµÄÒ»¸öÖ´ÐлùÀ࣬ËüÓк¯Êý runCmd(Import_args);¿ÉÒÔ¾ßÌåÖ´ÐÐһЩÃüÁîÐвÙ×÷*/
/**
* ConcurrentExecClass.java version 1.0 March 5, 2010
*/
package com.ericyang.test.cmdline;
import com.ericyang.test.cmdline.ThreadClass;
/*
* @author Eric Yang
*
*/
public class ConcurrentBfimortProjEnvFltFullTest extends xxxTestBase {
private static final String IMPORT_FILE =
TestConstants.BF_TEST_SRC_DIR
+ "/etc/bf7112_auto_bf_p_I_f_e_01.xml";
private static final String IMPORT_FILE2 =
TestConstants.BF_TEST_SRC_DIR
+ "/etc/bf7112_auto_bf_p_env_05.xml";
private static final String IMPORT_FILE3 =
TestConstants.BF_TEST_SRC_DIR
+ "/etc/bf7112_flt_include4.xml";
private static ExecutionResults execResults = null;
/**
* This method will perform any type of
* set up.
*
* @throws Exception
Ïà¹ØÎĵµ£º
ÔÚjavaÖУ¬¼ÙÉèÄãÓÐÒ»¸öuser ¶ÔÏóµÄlist£¬´Ëuser¶ÔÏó·â×°ÁËÓû§µÄid, first name, last name and age. È»ºóÄãÏëµ÷ÓÃÒ»¸öweb service(eg. UserService.deleteUsersByIds(List<Integer> userIds) ȥɾ³ýÊý¾Ý¿âÖÐÖ¸¶¨µÄÕâЩuser¡£ ÌýÆðÀ´Ëƺõ²»Ì«À§ÄÑ£¬²»ÊÇô? ÄãËùÐèÒªÖ»Êǽ« List<User> ת»¯³ÉList&l ......
public class TestClass{
public static void main(String args[]){
VarArgs(1, "one");
VarArgs(2, "one", "two");
VarArgs(3, "one", "two", "three");
VarArgs(0); // Attention!
}
static void VarArgs(int nRequired, String... trailing){
System.out.print("Required: " + nRequired + " ");
......
Ä³Ð©ÍøÕ¾ÔÊÐíÈí¼þ¿ª·¢ÉçÍÅͨ¹ý·¢²¼¿ª·¢ÕßÖ¸ÄÏ¡¢°×ƤÊé¡¢FAQs¡¾³£¼ûÎÊÌâ½â´ð¡¿ºÍÔ´´úÂëÒÔʵÏÖÐÅÏ¢µÄ¹²Ïí¡£Ëæ×ÅÐÅÏ¢Á¿µÄÔö³¤£¬ºÍ¼¸¸ö¿ª·¢Õß¹±Ï׳ö×Ô¼ºµÄ֪ʶ¿â£¬ÓÚÊÇÍøÕ¾ÌṩËÑË÷ÒýÇæÀ´ËÑË÷Õ¾µãÉÏÏÖÓеÄËùÓÐÐÅÏ¢¡£ËäÈ»ÕâЩËÑË÷ÒýÇæ¶ÔÎı¾ÎļþµÄËÑË÷¿ÉÒÔ×öµÄºÜºÃ£¬µ«¶Ô¿ª·¢ÕßËÑË÷Ô´´úÂë×öÁ˱ȽÏÑϸñµÄÏÞÖÆ¡£ËÑË÷ÒýÇæÈÏΪԴ´úÂë ......
ÔÚJava concurrent°üÖÐÓÐÕâôһ¸ö½Ó¿Ú£ºConcurrentMap¡£
ConcurrentMap¼Ì³Ð×ÔMap£¬²¢Ìí¼ÓÁ˼¸¸öеÄÔ×Ó·½·¨£º putIfAbsent¡¢remove¡¢replace
Æä·½·¨ÕªÒªÈçÏ£º
V
putIfAbsent(K key, V value)
Èç¹ûÖ¸¶¨¼üÒѾ²»ÔÙÓëij¸öÖµÏà¹ØÁª£¬Ôò½ ......
Ò».ÔÚj2seÀïÎÒÃÇ¿ÉÒÔʹÓÃMath.random()·½·¨À´²úÉúÒ»¸öËæ»úÊý£¬Õâ¸ö²úÉúµÄËæ»úÊýÊÇ0-1Ö®¼äµÄÒ»¸ödouble£¬ÎÒÃÇ¿ÉÒÔ°ÑËû³ËÒÔÒ»¶¨µÄÊý£¬±ÈÈç˵³ËÒÔ100£¬Ëû¾ÍÊǸö100ÒÔÄÚµÄËæ»ú£¬Õâ¸öÔÚj2meÖÐûÓС£
¶þ.ÔÚjava.utilÕâ¸ö°üÀïÃæÌṩÁËÒ»¸öRandomµÄÀ࣬ÎÒÃÇ¿ÉÒÔн¨Ò»¸öRandomµÄ¶ÔÏóÀ´²úÉúËæ»úÊý£¬Ëû¿ÉÒÔ²úÉúËæ»úÕûÊý¡¢Ëæ»úfloat¡¢ ......