Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 单方法内存泄漏_Java_Android_Memory Leaks_Heap - Fatal编程技术网

Java 单方法内存泄漏

Java 单方法内存泄漏,java,android,memory-leaks,heap,Java,Android,Memory Leaks,Heap,整个内存泄漏的事情对我来说似乎很复杂。这里有很多很好的信息,但我不能完全理解。即使读完了,我还是迷路了!有人能告诉我这个代码的内存泄漏在哪里吗?(重复运行此方法时会发生这种情况。)非常感谢 08-11 23:02:07.487: I/ViewRootImpl(969): Reporting drop result: true 08-11 23:02:07.987: D/dalvikvm(969): GC_FOR_ALLOC freed 1769K, 18% free 10101K/12180K,

整个内存泄漏的事情对我来说似乎很复杂。这里有很多很好的信息,但我不能完全理解。即使读完了,我还是迷路了!有人能告诉我这个代码的内存泄漏在哪里吗?(重复运行此方法时会发生这种情况。)非常感谢

08-11 23:02:07.487: I/ViewRootImpl(969): Reporting drop result: true
08-11 23:02:07.987: D/dalvikvm(969): GC_FOR_ALLOC freed 1769K, 18% free 10101K/12180K, paused 13ms, total 13ms
08-11 23:02:08.057: D/dalvikvm(969): GC_CONCURRENT freed 4K, 11% free 10915K/12180K, paused 3ms+5ms, total 30ms
08-11 23:02:08.057: D/dalvikvm(969): WAIT_FOR_CONCURRENT_GC blocked 1ms
08-11 23:02:14.757: I/dalvikvm(969): threadid=3: reacting to signal 3
08-11 23:02:14.767: I/dalvikvm(969): Wrote stack traces to '/data/anr/traces.txt'

公开作废交易(视图五){
//打电话玩
如果(已处理){
如果(下注==下注){
//手戏
处理=假;
deal.setImageResource(R.drawable.deal);
fold.setImageResource(R.drawable.clear);
dealersCards.clear();
经销商卡。添加(d1);
经销商卡。添加(d2);
经销商卡。添加(d3);
显示卡(经销商卡);
如果(getHand(pc1、pc2、pc3)>getHand(dc1、dc2、dc3)
&&getHand(dc1、dc2、dc3)>=1120000){
奖励=真实;
赌注(赌注);
奖励=真实;
玩(游戏赌注);
}否则如果(getHand(dc1、dc2、dc3)<1120000){
奖励=真实;
赌注(赌注);
}
否则{
如果(!(getHand(pc1,pc2,pc3)=getHand(dc1,dc2,dc3))){
奖励=真实;
赌注(-anteBet);
奖励=真实;
play(-playBet);
}
}
antePlusPayout();
pairPlusPayout();
}否则{
玩(赌注-赌注);
}
//交易卡
}否则如果(赌注>0){
deal.setImageResource(R.drawable.call);
fold.setImageResource(R.drawable.fold);
显示卡(显示器);
d1.设置图像资源(R.可绘制。面朝下);
d2.setImageResource(R.drawable.facedown);
d3.setImageResource(R.drawable.facedown);
处理=正确;
deal.setImageResource(R.drawable.call);
}
}

公共作废显示卡(列表显示){
int cardNumber=0;
用于(图像视图c:disp){
cardNumber++;
卡片-临时卡片;
做{
tempCard=deck.get(rand(52));
}while(cardsInPlay.contains(tempCard));
cardsInPlay.add(临时卡);
rank=tempCard.getRank();
suit=tempCard.getSuit();
如果(卡号==1){
dc1=临时卡;
}否则如果(卡号==2){
dc2=临时卡;
}否则如果(卡号==3){
dc3=临时卡;
}否则如果(卡号==4){
pc1=临时卡;
}否则如果(卡号==5){
pc2=临时卡;
}否则{
pc3=临时卡;
}
如果(排名=2,诉讼=c){
c、 setImageResource(R.drawable.clubs2);
}否则,如果(排名==3&&suit==c'){
c、 setImageResource(R.drawable.clubs3);
}否则,如果(排名==4&&suit==c'){
c、 setImageResource(R.drawable.clubs4);
}否则,如果(排名=5&&suit='c'){
c、 setImageResource(R.drawable.clubs5);
}否则,如果(排名==6&&suit==c){
c、 setImageResource(R.drawable.clubs6);
}否则,如果(排名==7&&suit==c){
c、 setImageResource(R.drawable.clubs7);
}否则,如果(排名==8&&suit==c'){
c、 setImageResource(R.drawable.clubs8);
}否则,如果(排名==9&&suit==c'){
c、 setImageResource(R.drawable.clubs9);
}否则,如果(排名=10,诉讼=c){
c、 setImageResource(R.drawable.clubs10);
}否则,如果(排名=11&&suit='c'){
c、 setImageResource(R.drawable.clubsj);
}否则,如果(排名==12,诉讼='c'){
c、 setImageResource(R.drawable.clubsq);
}否则,如果(排名=13&&suit='c'){
c、 setImageResource(R.drawable.clubsk);
}否则,如果(排名==14,诉讼==c){
c、 setImageResource(R.drawable.clubsa);
}
否则如果(排名==2&&suit==d'){
c、 setImageResource(R.drawable.diamonds2);
}否则,如果(排名==3&&suit==d'){
c、 setImageResource(R.drawable.diamonds3);
}否则如果(排名==4&&suit==d'){
c、 setImageResource(R.可拉伸钻石4);
}否则,如果(排名==5&&suit='d'){
c、 setImageResource(R.可绘制钻石5);
}否则,如果(排名=6,诉讼=d){
c、 setImageResource(R.可拉伸钻石6);
}否则,如果(排名==7&&suit==d'){
c、 setImageResource(R.drawable.diamonds7);
}否则,如果(排名==8&&suit==d'){
c、 setImageResource(R.drawable.diamonds8);
}否则,如果(排名==9&&suit==d'){
c、 setImageResource(R.drawable.diamonds9);
}否则,如果(排名=10,诉讼=d){
c、 setImageResource(R.可拉伸直径10);
}否则,如果(排名=11,诉讼=d){
c、 setImageResource(R.drawable.diamondsj);
}否则,如果(排名=12,诉讼=d){
c、 setImageResource(R.drawable.diamondsq);
}否则,如果(排名=13,诉讼=d){
c、 setImageResource(R.drawable.diamondsk);
}否则,如果(排名=14,诉讼=d){
c、 setImageResource(R.drawable.diamondsa);
}
否则,如果(排名==2&&suit==h'){
c、 setImageResource(R.drawable.hearts2);
}否则,如果(排名==3&&suit==h'){
c、 setImageResource(R.drawable.hearts3);
}否则如果(排名==4&&suit==h'){
c、 setImageResource(R.drawable.hearts4);
}否则,如果(排名==5&&suit==h'){
c、 setImageResource(R.drawable.hearts5);
}否则,如果(排名=6,诉讼=h){
c、 setImageResource(R.drawable.hearts6);
}否则如果(排名==7&&suit==h'){
c、 setImageResource(R.drawable.hearts7);
}否则,如果(排名==8&&suit==h'){
c、 setImageResource(R.drawabl
public void deal(View v) {

    // call and play
    if (dealt) {

        if (anteBet == playBet) {
            // hand plays
            dealt = false;
            deal.setImageResource(R.drawable.deal);
            fold.setImageResource(R.drawable.clear);
            dealersCards.clear();
            dealersCards.add(d1);
            dealersCards.add(d2);
            dealersCards.add(d3);
            displayCards(dealersCards);

            if (getHand(pc1, pc2, pc3) > getHand(dc1, dc2, dc3)
                    && getHand(dc1, dc2, dc3) >= 1120000) {
                award = true;
                ante(anteBet);
                award = true;
                play(playBet);
            } else if (getHand(dc1, dc2, dc3) < 1120000) {
                award = true;
                ante(anteBet);
            }

            else {
                if (!(getHand(pc1, pc2, pc3) == getHand(dc1, dc2, dc3))) {

                    award = true;
                    ante(-anteBet);
                    award = true;
                    play(-playBet);
                }
            }
            antePlusPayout();
            pairPlusPayout();

        } else {
            play(anteBet - playBet);
        }

        // deal cards
    } else if (anteBet > 0) {
        deal.setImageResource(R.drawable.call);
        fold.setImageResource(R.drawable.fold);
        displayCards(display);
        d1.setImageResource(R.drawable.facedown);
        d2.setImageResource(R.drawable.facedown);
        d3.setImageResource(R.drawable.facedown);
        dealt = true;
        deal.setImageResource(R.drawable.call);
    }
}
public void displayCards(List<ImageView> disp) {
    int cardNumber = 0;
    for (ImageView c : disp) {


        cardNumber++;

        Card tempCard;

        do {
            tempCard = deck.get(rand(52));
        } while (cardsInPlay.contains(tempCard));

        cardsInPlay.add(tempCard);
        rank = tempCard.getRank();
        suit = tempCard.getSuit();

        if (cardNumber == 1) {
            dc1 = tempCard;
        } else if (cardNumber == 2) {
            dc2 = tempCard;
        } else if (cardNumber == 3) {
            dc3 = tempCard;
        } else if (cardNumber == 4) {
            pc1 = tempCard;
        } else if (cardNumber == 5) {
            pc2 = tempCard;
        } else {
            pc3 = tempCard;
        }

        if (rank == 2 && suit == 'c') {
            c.setImageResource(R.drawable.clubs2);
        } else if (rank == 3 && suit == 'c') {
            c.setImageResource(R.drawable.clubs3);
        } else if (rank == 4 && suit == 'c') {
            c.setImageResource(R.drawable.clubs4);
        } else if (rank == 5 && suit == 'c') {
            c.setImageResource(R.drawable.clubs5);
        } else if (rank == 6 && suit == 'c') {
            c.setImageResource(R.drawable.clubs6);
        } else if (rank == 7 && suit == 'c') {
            c.setImageResource(R.drawable.clubs7);
        } else if (rank == 8 && suit == 'c') {
            c.setImageResource(R.drawable.clubs8);
        } else if (rank == 9 && suit == 'c') {
            c.setImageResource(R.drawable.clubs9);
        } else if (rank == 10 && suit == 'c') {
            c.setImageResource(R.drawable.clubs10);
        } else if (rank == 11 && suit == 'c') {
            c.setImageResource(R.drawable.clubsj);
        } else if (rank == 12 && suit == 'c') {
            c.setImageResource(R.drawable.clubsq);
        } else if (rank == 13 && suit == 'c') {
            c.setImageResource(R.drawable.clubsk);
        } else if (rank == 14 && suit == 'c') {
            c.setImageResource(R.drawable.clubsa);
        }

        else if (rank == 2 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds2);
        } else if (rank == 3 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds3);
        } else if (rank == 4 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds4);
        } else if (rank == 5 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds5);
        } else if (rank == 6 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds6);
        } else if (rank == 7 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds7);
        } else if (rank == 8 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds8);
        } else if (rank == 9 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds9);
        } else if (rank == 10 && suit == 'd') {
            c.setImageResource(R.drawable.diamonds10);
        } else if (rank == 11 && suit == 'd') {
            c.setImageResource(R.drawable.diamondsj);
        } else if (rank == 12 && suit == 'd') {
            c.setImageResource(R.drawable.diamondsq);
        } else if (rank == 13 && suit == 'd') {
            c.setImageResource(R.drawable.diamondsk);
        } else if (rank == 14 && suit == 'd') {
            c.setImageResource(R.drawable.diamondsa);
        }

        else if (rank == 2 && suit == 'h') {
            c.setImageResource(R.drawable.hearts2);
        } else if (rank == 3 && suit == 'h') {
            c.setImageResource(R.drawable.hearts3);
        } else if (rank == 4 && suit == 'h') {
            c.setImageResource(R.drawable.hearts4);
        } else if (rank == 5 && suit == 'h') {
            c.setImageResource(R.drawable.hearts5);
        } else if (rank == 6 && suit == 'h') {
            c.setImageResource(R.drawable.hearts6);
        } else if (rank == 7 && suit == 'h') {
            c.setImageResource(R.drawable.hearts7);
        } else if (rank == 8 && suit == 'h') {
            c.setImageResource(R.drawable.hearts8);
        } else if (rank == 9 && suit == 'h') {
            c.setImageResource(R.drawable.hearts9);
        } else if (rank == 10 && suit == 'h') {
            c.setImageResource(R.drawable.hearts10);
        } else if (rank == 11 && suit == 'h') {
            c.setImageResource(R.drawable.heartsj);
        } else if (rank == 12 && suit == 'h') {
            c.setImageResource(R.drawable.heartsq);
        } else if (rank == 13 && suit == 'h') {
            c.setImageResource(R.drawable.heartsk);
        } else if (rank == 14 && suit == 'h') {
            c.setImageResource(R.drawable.heartsa);
        }

        else if (rank == 2 && suit == 's') {
            c.setImageResource(R.drawable.spades2);
        } else if (rank == 3 && suit == 's') {
            c.setImageResource(R.drawable.spades3);
        } else if (rank == 4 && suit == 's') {
            c.setImageResource(R.drawable.spades4);
        } else if (rank == 5 && suit == 's') {
            c.setImageResource(R.drawable.spades5);
        } else if (rank == 6 && suit == 's') {
            c.setImageResource(R.drawable.spades6);
        } else if (rank == 7 && suit == 's') {
            c.setImageResource(R.drawable.spades7);
        } else if (rank == 8 && suit == 's') {
            c.setImageResource(R.drawable.spades8);
        } else if (rank == 9 && suit == 's') {
            c.setImageResource(R.drawable.spades9);
        } else if (rank == 10 && suit == 's') {
            c.setImageResource(R.drawable.spades10);
        } else if (rank == 11 && suit == 's') {
            c.setImageResource(R.drawable.spadesj);
        } else if (rank == 12 && suit == 's') {
            c.setImageResource(R.drawable.spadesq);
        } else if (rank == 13 && suit == 's') {
            c.setImageResource(R.drawable.spadesk);
        } else if (rank == 14 && suit == 's') {
            c.setImageResource(R.drawable.spadesa);
        }


    }
}
if( obj instanceof BitmapDrawable)
{
    Bitmap bmp = obj.getBitmap();
    bmp.Recycle();
} 
Bitmap CleanupCode(ImageView imgView) {

Drawable obj = imgView.getDrawable(); 

if( obj instanceof BitmapDrawable) {

 Bitmap bmp = obj.getBitmap(); bmp.Recycle(); return bmp;
 }
 return null; 
} 
////

Bitmap bmp = CleanupCode(c); 

c.setImageResource(R.drawable.clubs3); 
if(null != bmp) {
bmp.Recycle(); 
bmp = null; 
}